Heim >Datenbank >MySQL-Tutorial >Wie konvertiert SSIS Datumszeichenfolgen implizit in verschiedene Datentypen?

Wie konvertiert SSIS Datumszeichenfolgen implizit in verschiedene Datentypen?

DDD
DDDOriginal
2024-12-21 01:47:10454Durchsuche

How Does SSIS Implicitly Convert Date Strings to Different Data Types?

Implizite Konvertierung von Datumsangaben in SSIS-Quellen

Bei der Arbeit mit Daten ist es häufig erforderlich, Datumsangaben zwischen verschiedenen Formaten zu konvertieren. In SSIS kann das Verhalten der Datumskonvertierung manchmal unerwartet sein. In diesem Artikel wird die implizite Konvertierung von Datumszeichenfolgen in verschiedene SSIS-Datentypen untersucht und eine Referenztabelle der unterstützten Formate bereitgestellt.

Standardformate für Datum/Uhrzeit für SSIS-Datentypen

In der folgenden Tabelle werden die Standardformate für Datum/Uhrzeit aufgeführt Datentypen beim Konvertieren aus einer Zeichenfolge:

Data Type Default Format
DT_DBDATE yyyy-mm-dd
DT_FILETIME yyyy-mm-dd hh:mm:ss:fff
DT_DBTIME hh:mm:ss
DT_DBTIME2 hh:mm:ss[.fffffff]
DT_DBTIMESTAMP yyyy-mm-dd hh:mm:ss[.fff]
DT_DBTIMESTAMP2 yyyy-mm-dd hh:mm:ss[.fffffff]
DT_DBTIMESTAMPOFFSET yyyy-mm-dd hh:mm:ss[.fffffff] [{ -} hh:mm]

Implizite Konvertierung Experimente

Um die implizite Konvertierung von Datetime-Strings zu testen, wurden Experimente sowohl mit SSIS als auch mit SQL Server durchgeführt.

SSIS Implicit Datetime Conversion

Ein SSIS-Paket mit einer Dataflowtask wurde erstellt . Es wurden eine Skriptkomponente (als Quelle) und ein Flatfile-Ziel verwendet. Die Skriptkomponente hatte eine Ausgabespalte vom Typ DT_DbTimeStamp. Innerhalb des Skripts wurde eine Reihe von Experimenten durchgeführt:

  1. Eine Datumsvariable wurde definiert und auf ein bestimmtes Datum initialisiert.
  2. Eine Schleife wurde erstellt, um alle Kulturinformationen zu durchlaufen und abzurufen alle Datums-/Uhrzeitformate, die sich auf jede Kultur beziehen.
  3. Innerhalb der Schleife wurde versucht, die Datumsvariable in eine formatierte Zeichenfolge zu konvertieren und der Ausgabe zuzuweisen Spalte.
  4. Alle Konvertierungsfehler wurden protokolliert.

Die Ergebnisse dieser Experimente zeigten, dass eine Vielzahl von Datums-/Uhrzeitformaten implizit in den Datentyp DT_DBTIMESTAMP konvertiert werden, auch solche, die nicht berücksichtigt werden kanonisch.

Implizite SQL Server-Datum/Uhrzeit-Konvertierung

Zum Testen wurde eine SQL Server-Abfrage verwendet ob bestimmte Zeichenfolgenformate implizit in datetime konvertiert würden. Die folgende Abfrage wurde ausgeführt:

SELECT CONVERT(DATETIME, '" + dtdate.ToString(strFormat) + '")

Die Ergebnisse zeigten, dass nur zwei Datums-/Uhrzeitzeichenfolgenformate mit jeder Spracheinstellung korrekt interpretiert werden:

  1. jjjjMMtt
  2. jjjj- MM-ttTHH:mm:ss (ISO8601)

Das obige ist der detaillierte Inhalt vonWie konvertiert SSIS Datumszeichenfolgen implizit in verschiedene Datentypen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn