datepart ssis expression getdate

datepart - Expresión SSIS: convertir fecha en cadena



datepart ssis expression (2)

Para SSIS, puede ir con:

RIGHT("0" + (DT_STR, 2, 1252) DATEPART("dd" , GETDATE()), 2) + "-" + RIGHT("0" + (DT_STR, 2, 1252) DATEPART("mm" , GETDATE()), 2) + "-" + (DT_STR, 4, 1252) DATEPART("yy" , GETDATE())

Pantalla del generador de expresiones:

Soy nuevo en SSIS y estoy tratando de convertir GetDate () a la cadena "DD-MM-YYYY". Esta es la expresión que he construido hasta ahora:

(DT_WSTR, 8) DAY( GETDATE()) + "-" + (DT_WSTR, 8) (MONTH(GETDATE()) - 1) + "-" + (DT_WSTR, 8) YEAR(GETDATE())

El problema que tengo es que Month () convierte el mes "23-4-2013" en un solo carácter cuando lo quiero en carácter doble, igual que el día. ¿Cómo puedo convertirlo en un personaje doble sin importar el mes que sea?


Si, como yo, está tratando de usar GETDATE() dentro de una expresión y tiene el requisito aparentemente irracional (SSIS / SSDT parece ser un trabajo en progreso para mí, y no una oferta pulida) de querer que esa fecha se inserte en SQL Server como una fecha válida (type = datetime ), luego encontré esta expresión para que funcione:

@[User::someVar] = (DT_WSTR,4)YEAR(GETDATE()) + "-" + RIGHT("0" + (DT_WSTR,2)MONTH(GETDATE()), 2) + "-" + RIGHT("0" + (DT_WSTR,2)DAY( GETDATE()), 2) + " " + RIGHT("0" + (DT_WSTR,2)DATEPART("hh", GETDATE()), 2) + ":" + RIGHT("0" + (DT_WSTR,2)DATEPART("mi", GETDATE()), 2) + ":" + RIGHT("0" + (DT_WSTR,2)DATEPART("ss", GETDATE()), 2)

Encontré este fragmento de código AQUÍ