Podrobná odpověď, ale musím se lišit v tom, zda "SSIS nemůže rozpoznat formát data uvedený v otázce."
Možná kdyby to bylo přeformulováno jako "SSIS nemůže bez pomoci rozpoznat dodaný formát data." Základní problém v tomto případě spočívá v tom, že ve výchozím nastavení jsou rutiny analýzy data a čísla vědomí o místním prostředí . Obecně je to dobrá věc, kromě případů, kdy tomu tak není. Poprvé jsem na to narazil, když jsem se zabýval daty ve formátu ccyymmdd vycházejícími ze sálového počítače. Jak uvedli ostatní, bude to analyzovat v tsql, proč ne SSIS? Existuje spousta článků, které obhajují krájení a krájení řetězcových dat, aby se z nich stal platný datum a čas, ale proč se tím zabývat?
Toto jsou ukázková vstupní data (oddělená tabulátory).
LongDateDesiresFastParse Gibberish
Oct 25 2011 10:18:10:756PM Hello world
Oct 24 2010 10:18:10:756PM Hello 2010 world
Oct 23 2009 10:18:10:756PM Hello 2009 world
Oct 22 2008 10:18:10:756PM Hello 2008 world
A balíček, který vypadá takto,
Změnou jednoho nastavení na Zdroj plochých souborů , mohu způsobit selhání balíčku nebo ne.
Klikněte pravým tlačítkem na Zdroj plochého souboru a vyberte „Zobrazit pokročilý editor“. Na kartě "Vlastnosti vstupu a výstupu" rozbalte výstupní sloupce a najděte sloupec obsahující datum. Změňte FastParse nastavení z False na True .
Když jsem to spustil, balíček původně selhal, protože ztrácel přesnost ukládání této hodnoty do DB_TIMESTAMP
. Byl jsem úspěšný, když jsem nastavil sloupec na typ DB_TIMESTAMP2
Ukázkový balíček je k dispozici na adrese https://sites .google.com/site/billfellows/home/files/FastParse.dtsx?attredirects=0&d=1