SQL Server Integration Services-Datentypen

Gilt für:SQL Server SSIS Integration Runtime in Azure Data Factory

Wenn Daten in einem Paket in einen Datenfluss gelangen, wandelt die Quelle, die die Daten extrahiert, die Daten in einen Integration Services-Datentyp um. Numerischen Daten wird ein numerischer Datentyp, Zeichenfolgendaten wird ein Zeichendatentyp und Daten ein Datumsdatentyp zugewiesen. Anderen Daten, wie z. B. GUIDs und BLOBs (Binary Large Object Blocks), werden ebenfalls entsprechende Integration Services -Datentypen zugewiesen. Falls Daten von einem Datentyp sind, der nicht in einen Integration Services -Datentyp konvertiert werden kann, tritt ein Fehler auf.

Einige Datenflusskomponenten konvertieren Integration Services-Datentypen in verwaltete Datentypen von Microsoft .NET Framework. Weitere Informationen zur Zuordnung von Integration Services zu verwalteten Datentypen finden Sie unter Verwenden von Datentypen im Datenfluss.

In der folgenden Tabelle sind die Integration Services -Datentypen aufgeführt. Bei einigen der Datentypen in der Tabelle werden auch die für sie geltende Genauigkeit und die Anzahl der Dezimalstellen genannt. Weitere Informationen zu Genauigkeit und Dezimalstellen finden Sie unter Genauigkeit, Dezimalstellen und Länge (Transact-SQL).

Datentyp BESCHREIBUNG
DT_BOOL Ein boolescher Wert.
DT_BYTES Ein binärer Datenwert. Die Länge ist variabel, und die maximale Länge beträgt 8000 Bytes.
DT_CY Ein Währungswert. Dieser Datentyp ist eine 8-Bit-Ganzzahl mit Vorzeichen mit 4 Dezimalstellen und einer maximalen Genauigkeit von 19 Stellen.
DT_DATE Eine Datumsstruktur bestehend aus dem Jahr, dem Monat, dem Tag, der Stunde, der Minute, der Sekunde und Sekundenbruchteilen. Die Sekundenbruchteile besitzen einen festen Bereich von 7 Dezimalstellen.

Der DT_DATE-Datentyp wird mithilfe einer 8-Byte-Gleitkommazahl implementiert. Tage werden in Schritten ganzer Zahlen dargestellt, beginnend mit dem 30. Dezember 1899, wobei Mitternacht dem Zeitwert null entspricht. Stundenwerte werden als absoluter Wert des Nachkommateils der Zahl ausgedrückt. Ein Gleitkommawert kann jedoch nicht alle reellen Werte darstellen. Daher ist der im DT_DATE-Datentyp darstellbare Datumsbereich begrenzt.

Im Vergleich dazu enthält der DT_DBTIMESTAMP-Datentyp intern eine Struktur mit einzelnen Feldern zur Darstellung von Jahren, Monaten, Tagen, Stunden, Minuten, Sekunden und Millisekunden. Dieser Datentyp hat größere Grenzwerte für die Bereiche von Datumswerten, die er darstellen kann.
DT_DBDATE Eine Datumsstruktur bestehend aus dem Jahr, dem Monat und dem Tag.
DT_DBTIME Eine Zeitstruktur bestehend aus der Stunde, der Minute und der Sekunde.
DT_DBTIME2 Eine Zeitstruktur bestehend aus der Stunde, der Minute, der Sekunde und Sekundenbruchteilen. Die Sekundenbruchteile besitzen maximal 7 Dezimalstellen.
DT_DBTIMESTAMP Eine Timestampstruktur bestehend aus dem Jahr, dem Monat, dem Tag, der Stunde, der Minute, der Sekunde und Sekundenbruchteilen. Die Sekundenbruchteile besitzen maximal 3 Dezimalstellen.
DT_DBTIMESTAMP2 Eine Timestampstruktur bestehend aus dem Jahr, dem Monat, dem Tag, der Stunde, der Minute, der Sekunde und Sekundenbruchteilen. Die Sekundenbruchteile besitzen maximal 7 Dezimalstellen.
DT_DBTIMESTAMPOFFSET Eine Timestampstruktur bestehend aus dem Jahr, dem Monat, dem Tag, der Stunde, der Minute, der Sekunde und Sekundenbruchteilen. Die Sekundenbruchteile haben eine maximale Skala von 7 Stellen.

Im Gegensatz zu den Datentypen DT_DBTIMESTAMP und DT_DBTIMESTAMP2 verfügt der DT_DBTIMESTAMPOFFSET-Datentyp über einen Zeitzonenoffset. Dieser Offset gibt die Zahl der Stunden und Minuten an, um die die Zeit gegenüber der koordinierten Weltzeit (UTC) versetzt ist. Der Zeitzonenoffset wird vom System verwendet, um die Ortszeit zu bestimmen.

Der Zeitzonenoffset muss ein Vorzeichen (plus oder minus) enthalten, das angibt, ob der Offset zur UTC addiert oder von dieser subtrahiert wird. Die gültige Anzahl der Stunden im Offsetwert liegt zwischen -14 und +14. Das Vorzeichen für den Minutenoffset hängt von dem Vorzeichen für den Stundenoffset ab:

Wenn das Stundenoffset ein negatives Vorzeichen hat, muss das Minutenoffset negativ oder 0 sein.

Wenn das Vorzeichen des Stundenoffsets positiv ist, muss der Minutenoffset positiv oder null sein.

Wenn das Vorzeichen des Stundenoffsets gleich null ist, kann der Minutenoffset einen beliebigen Wert von minus 0,59 bis plus 0,59 annehmen.
DT_DECIMAL Ein exakter numerischer Wert mit einer festen Präzision und einer festen Skalierung. Dieser Datentyp ist eine 12 Byte große Ganzzahl mit separatem Vorzeichen, einer Skalierung von 0 bis 28 und einer maximalen Präzision von 29.
DT_FILETIME Ein 64-Bit-Wert, der die Anzahl von 100-Nanosekunden-Intervallen seit dem 1. Januar 1601 darstellt. Die Sekundenbruchteile besitzen maximal 3 Dezimalstellen.
DT_GUID Ein global eindeutiger Bezeichner (GUID, Globally Unique Identifier).
DT_I1 Ein Integer mit Vorzeichen, 1 Byte groß.
DT_I2 Eine ganze Zahl mit Vorzeichen und einer Länge von 2 Bytes.
DT_I4 Eine vier Byte große ganze Zahl mit Vorzeichen.
DT_I8 Eine vorzeichenbehaftete Ganzzahl mit acht Byte.
DT_NUMERIC Ein exakter numerischer Wert mit fester Präzision und Skalierung. Dieser Datentyp ist eine 16-Byte-Ganzzahl mit separatem Vorzeichen, einer Skala von 0 bis 38 und einer maximalen Präzision von 38.
DT_R4 Ein Gleitkommawert mit einfacher Genauigkeit.
DT_R8 Ein Gleitkommawert mit doppelter Genauigkeit.
DT_STR Eine NULL-terminierte ANSI/MBCS-Zeichenfolge mit einer maximalen Länge von 8000 Zeichen. (Wenn ein Spaltenwert zusätzliche Nullabschlusszeichen enthält, wird die Zeichenfolge bei der ersten Null abgeschnitten.)
DT_UI1 Eine ganze Zahl ohne Vorzeichen und einer Länge von 1 Byte.
DT_UI2 Eine ganze Zahl ohne Vorzeichen und einer Länge von 2 Bytes.
DT_UI4 Eine ganze Zahl ohne Vorzeichen und einer Länge von 4 Bytes.
DT_UI8 Eine ganze Zahl ohne Vorzeichen und einer Länge von 8 Bytes.
DT_WSTR Eine NULL-terminierte Unicode-Zeichenfolge mit einer maximalen Länge von 4000 Zeichen. (Wenn ein Spaltenwert zusätzliche Nullabschlusszeichen enthält, wird die Zeichenfolge bei der ersten Null abgeschnitten.)
DT_IMAGE Ein Binärwert mit einer maximalen Länge von 2^31-1 (2.147.483.647) Bytes. .
DT_NTEXT Eine Unicode-Zeichenfolge mit einer maximalen Länge von 2^30-1 (1.073.741.823) Zeichen.
DT_TEXT Eine ANSI/MBCS-Zeichenfolge mit einer maximalen Länge von 2^31-1 (2.147.483.647) Zeichen.

Datentypkonvertierung

Falls die Daten in einer Spalte nicht die vom Quelldatentyp zugeordnete normale Breite benötigen, können Sie den Datentyp der Spalte ändern. Wenn jede Datenzeile so schmal wie möglich ist, wird die Leistung beim Übertragen von Daten optimiert, denn umso schmaler eine Zeile ist, desto schneller werden die Daten von der Quelle an das Ziel verschoben.

Integration Services enthält einen vollständigen Satz numerischer Datentypen, sodass der Datentyp in hohem Maß auf die Größe der Daten abgestimmt werden kann. Wenn z. B. die Werte in einer Spalte mit einem DT_UI8-Datentyp immer ganze Zahlen zwischen 0 und 3000 sind, können Sie den Datentyp in DT_UI2 ändern. Wenn entsprechend eine Spalte mit dem DT_CY-Datentyp die Datenanforderungen des Pakets erfüllen kann, indem stattdessen ein ganzzahliger Datentyp verwendet wird, können Sie den Datentyp in DT_I4 ändern.

Es gibt folgende Möglichkeiten, um den Datentyp einer Spalte zu ändern:

Konvertieren zwischen Zeichenfolgen und Datums-/Uhrzeitdatentypen

In der folgenden Tabelle sind die Ergebnisse der Umwandlung oder der Konvertierung zwischen Datums- und Uhrzeitdatentypen und Zeichenfolgen aufgelistet:

  • Mit dem Umwandlungsoperator oder der Transformation für Datenkonvertierung wird der Datums- oder Uhrzeitdatentyp in die entsprechende Zeichenfolge umgewandelt. Zum Beispiel wird der DT_DBTIME-Datentyp in eine Zeichenfolge im Format "hh:mm:ss" konvertiert.

  • Zur Umwandlung einer Zeichenfolge in einen Datums- oder Zeitdatentyp muss die Zeichenfolge in einem Zeichenfolgenformat vorliegen, das zum entsprechenden Datums- oder Zeitdatentyp passt. Um z. B. Datumszeichenfolgen erfolgreich in den DT_DBDATE-Datentyp umzuwandeln, müssen diese Zeichenfolgen im Format "yyyy-mm-dd" vorliegen.

    Datentyp Zeichenfolgenformat
    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]

Beim Datumsformat für DT_FILETIME und DT_DBTIMESTAMP stellt fff einen Wert zwischen 0 und 999 dar, der die Sekundenbruchteile angibt.

Beim Datumsformat für DT_DBTIMESTAMP2, DT_DBTIME2 und DT_DBTIMESTAMPOFFSET, stellt fffffff einen Wert zwischen 0 und 9999999 dar, der die Sekundenbruchteile angibt.

Das Datumsformat für DT_DBTIMESTAMPOFFSET schließt auch ein Zeitzonenelement ein. Es gibt ein Leerzeichen zwischen dem Zeitelement und dem Zeitzonenelement.

Konvertieren von Datums- und Zeitdatentypen

Sie können den Datentyp einer Spalte mit Datums-/Zeitdaten ändern, um den Datums- oder Zeitteil der Daten zu extrahieren. Die folgende Tabelle führt die Ergebnisse der Umwandlung von einem Datums- und Zeitdatentyp in einen anderen Datums- und Zeitdatentyp auf.

Konvertieren von DT_FILETIME

Konvertieren von DT_FILETIME in Ergebnis
DT_FILETIME Keine Änderung.
DT_DATE Konvertiert den Datentyp.
DT_DBDATE Entfernt den Zeitwert.
DT_DBTIME Entfernt den Datumswert.

Entfernt den Wert für die Bruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIME2 Entfernt den durch den DT_FILETIME-Datentyp dargestellten Datumswert.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DBTIME2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP Konvertiert den Datentyp.
DT_DBTIMESTAMP2 Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMPOFFSET Legt das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf Null fest.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMPOFFSET enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.

Konvertierung von DT_DATE

DT_DATE konvertieren in Ergebnis
DT_FILETIME Konvertiert den Datentyp.
DT_DATE Keine Änderung.
DT_DBDATE Entfernt den durch den DT_DATA-Datentyp dargestellten Zeitwert.
DT_DBTIME Entfernt den durch den DT_DATA-Datentyp dargestellten Datumswert.
DT_DBTIME2 Entfernt den durch den DT_DATA-Datentyp dargestellten Datumswert.
DT_DBTIMESTAMP Konvertiert den Datentyp.
DT_DBTIMESTAMP2 Konvertiert den Datentyp.
DT_DBTIMESTAMPOFFSET Legt das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf Null fest.

Konvertieren von DT_DBDATE

DT_DBDATE konvertieren in Ergebnis
DT_FILETIME Legt die Zeitfelder im DT_FILETIME-Datentyp auf Null fest.
DT_DATE Legt die Zeitfelder im DT_DATE-Datentyp auf Null fest.
DT_DBDATE Keine Änderung.
DT_DBTIME Legt die Zeitfelder im DT_DBTIME-Datentyp auf Null fest.
DT_DBTIME2 Legt die Zeitfelder im DT_DBTIME2-Datentyp auf Null fest.
DT_DBTIMESTAMP Legt die Zeitfelder im DT_DBTIMESTAMP-Datentyp auf Null fest.
DT_DBTIMESTAMP2 Legt die Zeitfelder im DT_DBTIMESTAMP-Datentyp auf Null fest.
DT_DBTIMESTAMPOFFSET Legt die Zeitfelder und das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf Null fest.

Konvertieren von DT_DBTIME

DT_DBTIME konvertieren in Ergebnis
DT_FILETIME Legt das Datumsfeld im DT_FILETIME-Datentyp auf das aktuelle Datum fest.
DT_DATE Legt das Datumsfeld im DT_DATE-Datentyp auf das aktuelle Datum fest.
DT_DBDATE Legt das Datumsfeld im DT_DBDATE-Datentyp auf das aktuelle Datum fest.
DT_DBTIME Keine Änderung.
DT_DBTIME2 Konvertiert den Datentyp.
DT_DBTIMESTAMP Legt das Datumsfeld im DT_DBTIMESTAMP-Datentyp auf das aktuelle Datum fest.
DT_DBTIMESTAMP2 Legt das Datumsfeld im DT_DBTIMESTAMP2-Datentyp auf das aktuelle Datum fest.
DT_DBTIMESTAMPOFFSET Legt das Datumsfeld und das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf das aktuelle Datum beziehungsweise auf Null fest.

Konvertieren von DT_DBTIME2

Konvertieren von DT_DBTIME2 in Ergebnis
DT_FILETIME Legt das Datumsfeld im DT_FILETIME-Datentyp auf das aktuelle Datum fest.

Entfernt den Sekundenbruchteilwert, wenn dessen Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_FILETIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DATE Legt das Datumsfeld im DT_DATE-Datentyp auf das aktuelle Datum fest.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DATE aufnehmen kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBDATE Legt das Datumsfeld im DT_DBDATE-Datentyp auf das aktuelle Datum fest.
DT_DBTIME Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIME2 Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Zieldatentyp DT_DBTIME2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP Legt das Datumsfeld im DT_DBTIMESTAMP-Datentyp auf das aktuelle Datum fest.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP2 Legt das Datumsfeld im DT_DBTIMESTAMP2-Datentyp auf das aktuelle Datum fest.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP2 enthalten kann. Nach dem Entfernen des Werts für den Bruchteil einer Sekunde wird ein Bericht über diese Datenkürzung generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMPOFFSET Legt das Datumsfeld und das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf das aktuelle Datum beziehungsweise auf Null fest.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMPOFFSET enthalten kann. Nach dem Entfernen des Sekundenbruchteilwerts wird ein Bericht über diese Datenkürzung generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.

Konvertierung von DT_DBTIMESTAMP

DT_DBTIMESTAMP konvertieren in Ergebnis
DT_FILETIME Konvertiert den Datentyp.
DT_DATE Überschreitet der durch den DT_DBTIMESTAMP-Datentyp dargestellte Wert den für den DT_DATE-Datentyp gültigen Bereich, wird der DB_E_DATAOVERFLOW-Fehler zurückgegeben. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBDATE Entfernt den durch den DT_DBTIMESTAMP-Datentyp dargestellten Zeitwert.
DT_DBTIME Entfernt den durch den DT_DBTIMESTAMP-Datentyp dargestellten Datumswert.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIME2 Entfernt den durch den DT_DBTIMESTAMP-Datentyp dargestellten Datumswert.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DBTIME2 enthalten kann. Nach dem Entfernen des Sekundenbruchteilwerts wird ein Bericht über diese Datenkürzung generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP Keine Änderung.
DT_DBTIMESTAMP2 Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP2 enthalten kann. Nach dem Entfernen des Sekundenbruchteilwerts wird ein Bericht über diese Datenkürzung generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMPOFFSET Legt das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf Null fest.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMPOFFSET enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.

Konvertieren von DT_DBTIMESTAMP2

DT_DBTIMESTAMP2 konvertieren in Ergebnis
DT_FILETIME Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_FILETIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DATE Überschreitet der durch den DT_DBTIMESTAMP2-Datentyp dargestellte Wert den für den DT_DATE-Datentyp gültigen Bereich, wird der DB_E_DATAOVERFLOW-Fehler zurückgegeben. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DATE aufnehmen kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBDATE Entfernt den durch den DT_DBTIMESTAMP2-Datentyp dargestellten Zeitwert.
DT_DBTIME Entfernt den durch den DT_DBTIMESTAMP2-Datentyp dargestellten Datumswert.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIME2 Entfernt den durch den DT_DBTIMESTAMP2-Datentyp dargestellten Datumswert.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DBTIME2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP Überschreitet der durch den DT_DBTIMESTAMP2-Datentyp dargestellte Wert den für den DT_DBTIMESTAMP-Datentyp gültigen Bereich, wird der DB_E_DATAOVERFLOW-Fehler zurückgegeben.

DT_DBTIMESTAMP2 wird dem SQL Server-Datentyp datetime2 mit dem Bereich vom 1. Januar 1 n. Chr. bis zum 31. Dezember 9999 zugeordnet. DT_DBTIMESTAMP wird dem SQL Server-Datentyp datetime mit dem kleineren Bereich vom 1. Januar 1753 bis zum 31. Dezember 9999 zugeordnet.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert.

Weitere Informationen zu Fehlern finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP2 Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Zieldatentyp DT_DBTIMESTAMP2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMPOFFSET Legt das Zeitzonenfeld im DT_DBTIMESTAMPOFFSET-Datentyp auf Null fest.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMPOFFSET enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.

Konvertieren von DT_DBTIMESTAMPOFFSET

Konvertieren von DT_DBTIMESTAMPOFFSET in Ergebnis
DT_FILETIME Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in die koordinierte Weltzeit (UTC).

Entfernt den Sekundenbruchteilwert, wenn dessen Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_FILETIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DATE Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in UTC.

Überschreitet der durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellte Wert den für den DT_DATE-Datentyp gültigen Bereich, wird der DB_E_DATAOVERFLOW-Fehler zurückgegeben.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DATE aufnehmen kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert.

Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBDATE Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in UTC, was sich auf den Datumswert auswirken kann. Dann wird der Zeitwert entfernt.
DT_DBTIME Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in UTC.

Entfernt den Datenwert, der durch den Datentyp DT_DBTIMESTAMPEOFFSET dargestellt wird.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIME enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIME2 Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in UTC.

Entfernt den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Datumswert.

Entfernt den Wert der Sekundenbruchteile, wenn seine Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Datentyp DT_DBTIME2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in UTC.

Überschreitet der durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellte Wert den für den DT_DBTIMESTAMP-Datentyp gültigen Bereich, wird der DB_E_DATAOVERFLOW-Fehler zurückgegeben.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert.

Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMP2 Ändert den durch den DT_DBTIMESTAMPOFFSET-Datentyp dargestellten Zeitwert in UTC.

Entfernt den Wert für die Sekundenbruchteile, wenn die Anzahl der Dezimalstellen größer als die Anzahl ist, die der Datentyp DT_DBTIMESTAMP2 enthalten kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.
DT_DBTIMESTAMPOFFSET Entfernt den Sekundenbruchteilwert, wenn dessen Skalierung größer ist als die Anzahl der Sekundenbruchteilziffern, die der Zieldatentyp DT_DBTIMESTAMPOFFSET speichern kann. Nach dem Entfernen des Werts für die Sekundenbruchteile wird ein Bericht über dieses Abschneiden der Daten generiert. Weitere Informationen finden Sie unter Fehlerbehandlung in Daten.

Zuordnen von SQL Server Integration Services-Datentypen zu Datenbank-Datentypen

Die folgenden Tabelle gibt Hinweise für die Zuordnung von Datentypen bestimmter Datenbanken zu Integration Services -Datentypen. Diese Zuordnungen sind den Zuordnungsdateien entnommen, die vom SQL Server -Import/Export-Assistenten beim Importieren von Daten aus den betreffenden Quellen verwendet werden. Weitere Informationen zu diesen Zuordnungsdateien finden Sie unter SQL Server-Import/Export-Assistent.

Wichtig

Die Zuordnungen sind nicht als strenge Entsprechungen zu verstehen, sondern stellen lediglich Anhaltspunkte dar. In bestimmten Fällen muss möglicherweise ein anderer Dateityp als der in der Tabelle angegebene verwendet werden.

Hinweis

Sie können die Größe entsprechender Datum-/Uhrzeit-Datentypen von Integration Services mithilfe der SQL Server-Datentypen schätzen.

Datentyp SQL Server

(SQLOLEDB; SQLNCLI10)
SQL Server (SqlClient) Düse Oracle

(OracleClient)
DB2

(DB2OLEDB)
DB2

(IBMDADB2)
DT_BOOL bit bit bit
DT_BYTES binary, varbinary, timestamp binary, varbinary, timestamp BigBinary, VarBinary RAW
DT_CY smallmoney, money Kleinbetrag, Geld Währung
DT_DATE
DT_DBDATE Datum (Transact-SQL) Datum (Transact-SQL) Datum Datum Datum
DT_DBTIME Zeitstempel Zeit Zeit
DT_DBTIME2 Zeit (Transact-SQL)(p) Zeit (Transact-SQL) (p)
DT_DBTIMESTAMP Datetime (Transact-SQL), Smalldatetime (Transact-SQL) Datetime (Transact-SQL), Smalldatetime (Transact-SQL) Datum/Uhrzeit ZEITSTEMPEL, DATUM, INTERVALL ZEIT, ZEITSTEMPEL, DATUM ZEIT, ZEITSTEMPEL, DATUM
DT_DBTIMESTAMP2 datetime2 (Transact-SQL) datetime2 (Transact-SQL) Zeitstempel Zeitstempel Zeitstempel
DT_DBTIMESTAMPOFFSET datetimeoffset (Transact-SQL)(p) datetimeoffset (Transact-SQL) (p) timestampoffset Zeitstempel,

varchar
Zeitstempel,

varchar
DT_DECIMAL
DT_FILETIME
DT_GUID uniqueidentifier uniqueidentifier GUID
DT_I1
DT_I2 smallint smallint Kurz SMALLINT SMALLINT
DT_I4 INT INT Lang INTEGER INTEGER
DT_I8 BIGINT BIGINT BIGINT BIGINT
DT_NUMERIC decimal, numeric decimal, numeric Dezimal ZAHL, INT decimal, numeric decimal, numeric
DT_R4 echt echt Single real real
DT_R8 float float Double FLOAT, REAL FLOAT, DOUBLE FLOAT, DOUBLE
DT_STR Char, Varchar VarChar char, varchar char, varchar
DT_UI1 tinyint tinyint Byte
DT_UI2
DT_UI4
DT_UI8
DT_WSTR nchar, nvarchar, sql_variant, xml char, varchar, nchar, nvarchar, sql_variant, xml LongText CHAR, ROWID, VARCHAR2, NVARCHAR2, NCHAR GRAFIK, VARGRAFIK GRAPHIC, VARGRAPHIC
DT_IMAGE Bild Bild LongBinary LONG RAW, BLOB, LOBLOCATOR, BFILE, VARGRAPHIC, LONG VARGRAPHIC, benutzerdefiniert CHAR () FOR BIT DATA, VARCHAR () FOR BIT DATA CHAR () FOR BIT DATA, VARCHAR () FOR BIT DATA, BLOB
DT_NTEXT ntext Text, ntext LONG, CLOB, NCLOB, NVARCHAR, TEXT LONG VARCHAR, NCHAR, NVARCHAR, TEXT LONG VARCHAR, DBCLOB, NCHAR, NVARCHAR, TEXT
DT_TEXT text LANGE VARCHAR FÜR BIT-DATEN LONG VARCHAR FOR BIT DATA, CLOB

Weitere Informationen zur Zuordnung von Datentypen im Datenfluss finden Sie unter Verwenden von Datentypen im Datenfluss.