SSIS: convertir la string ISO 8601 en colonne datetime

J'ai un file falt CSV que j'essaye d'importer en utilisant SSIS. La string de date est au format 20170215T000002 – cela ressemble à ISO 8601, donc je suis sûr que je devrais être capable de le mapper en un type de colonne datetime en SQL, mais je perds toutes datatables de time et je reçois la date composant (correctement analysé).

Des conseils sur la façon d'get cet élément de text dans un format datetime en SQL?

En supposant que le nom de la colonne de date est inColumn

Dans la DataflowTask, ajoutez un composant de script, Mark inColumn comme colonne d'input, ajoutez une nouvelle colonne de sortie outColumn avec dataType DT_DBTIMESTAMP

Dans le script, dans Input0_ProcessInputRow utilisez la fonction DateTime.ParseExact comme suit:

 Row.inColumn = DateTime.ParseExact(Row.inColumn,"yyyyMMddTHHmmss",New System.Globalization.CultureInfo("en-GB")) 

Je pense que ISO 8601 a des deux-points pour le séparateur de time.

En supposant que vous utilisez SQL Server, cela devrait fonctionner:

 select convert(datetime, stuff(stuff(col, 14, 0, ':'), 12, 0, ':'), 126)