Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Importuj datę ciągu w kolumnie pochodnej

Szczegółowa odpowiedź, ale błagam o różnicę w kwestii, czy „SSIS nie może rozpoznać formatu daty podanego w pytaniu”.

Być może, gdyby został zmieniony jako „SSIS nie może rozpoznać dostarczonego formatu daty bez pomocy”. Głównym problemem w tym przypadku jest to, że domyślnie procedury analizy dat i liczb to świadomość lokalna . Ogólnie rzecz biorąc, to dobra rzecz, chyba że tak nie jest. Po raz pierwszy natknąłem się na to, gdy miałem do czynienia z datami w formacie ccyymmdd wychodzącymi z komputera mainframe. Jak wskazali inni, będzie parsować w tsql, dlaczego nie SSIS? Istnieje wiele artykułów zalecających krojenie i dzielenie danych ciągu, aby uzyskać prawidłową datę i godzinę, ale po co przechodzić przez te wszystkie kłopoty?

Biorąc to jako przykładowe dane wejściowe (rozdzielone tabulatorami).

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

I pakiet, który wygląda tak,

Zmieniając jedno ustawienie w źródle pliku płaskiego , mogę sprawić, że pakiet się nie powiedzie lub nie.

Kliknij prawym przyciskiem myszy Flat File Source i wybierz „Show Advanced Editor”. Na karcie „Właściwości wejściowe i wyjściowe” rozwiń kolumny wyjściowe i znajdź kolumnę zawierającą datę. Zmień FastParse ustawienie od Fałsz do Prawda .

Kiedy go uruchomiłem, pakiet pierwotnie zawiódł, ponieważ tracił precyzję przechowywania tej wartości w DB_TIMESTAMP . Udało mi się, gdy ustawiłem kolumnę na typ DB_TIMESTAMP2

Pakiet demonstracyjny dostępny pod adresem https://sites .google.com/site/billfellows/home/files/FastParse.dtsx?attredirects=0&d=1




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. replikacja między wydawcą offline a subskrybentem online?

  2. Optymalizacja zapytania SQL do obliczania salda konta

  3. Wywołaj procedurę składowaną z php codeigniter

  4. Konwertuj „datetime” na „smalldatetime” w SQL Server (przykłady T-SQL)

  5. ADO .NET kontra SQL Server Management Studio — ADO działa gorzej