T-SQL - Datentypen
Der SQL Server-Datentyp ist ein Attribut, das Datentypen eines Objekts angibt. Jede Spalte, Variable und jeder Ausdruck hat einen zugehörigen Datentyp in SQL Server. Diese Datentypen können beim Erstellen von Tabellen verwendet werden. Sie können je nach Anforderung einen bestimmten Datentyp für eine Tabellenspalte auswählen.
SQL Server bietet sieben Kategorien einschließlich anderer Datentypen zur Verwendung.
Genaue numerische Typen
Art | Von | Zu |
---|---|---|
Bigint | -9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |
int | -2,147,483,648 | 2,147,483,647 |
smallint | -32.768 | 32.767 |
tinyint | 0 | 255 |
bisschen | 0 | 1 |
Dezimal | -10 ^ 38 +1 | 10 ^ 38 –1 |
numerisch | -10 ^ 38 +1 | 10 ^ 38 –1 |
Geld | -922.337.203.685.477.5808 | +922.337.203.685.477.5807 |
Kleingeld | -214.748,3648 | +214.748,3647 |
Numerisch und dezimal sind Datentypen mit fester Genauigkeit und Skalierung und funktional äquivalent.
Ungefähre numerische Typen
Art | Von | Zu |
---|---|---|
Schweben | -1,79E + 308 | 1,79E + 308 |
Echt | -3,40E + 38 | 3,40E + 38 |
Datums- und Uhrzeittypen
Art | Von | Zu |
---|---|---|
datetime(3,33 Millisekunden Genauigkeit) |
1. Januar 1753 | 31. Dezember 9999 |
smalldatetime(1 Minute Genauigkeit) |
1. Januar 1900 | 6. Juni 2079 |
date(1 Tag Genauigkeit. Eingeführt in SQL Server 2008) |
1. Januar 0001 | 31. Dezember 9999 |
datetimeoffset(100 Nanosekunden Genauigkeit. Eingeführt in SQL Server 2008) |
1. Januar 0001 | 31. Dezember 9999 |
datetime2(100 Nanosekunden Genauigkeit. Eingeführt in SQL Server 2008) |
1. Januar 0001 | 31. Dezember 9999 |
time(100 Nanosekunden Genauigkeit. Eingeführt in SQL Server 2008) |
00: 00: 00.0000000 | 23: 59: 59.9999999 |
Zeichenketten
Sr.Nr. | Typ & Beschreibung |
---|---|
1 | char Nicht-Unicode-Zeichendaten mit fester Länge und einer maximalen Länge von 8.000 Zeichen. |
2 | varchar Nicht-Unicode-Daten variabler Länge mit maximal 8.000 Zeichen. |
3 | Varchar (max) Nicht-Unicode-Daten variabler Länge mit einer maximalen Länge von 231 Zeichen (eingeführt in SQL Server 2005). |
4 | text Nicht-Unicode-Daten variabler Länge mit einer maximalen Länge von 2.147.483.647 Zeichen |
Unicode-Zeichenfolgen
Sr.Nr. | Typ & Beschreibung |
---|---|
1 | nchar Unicode-Daten mit fester Länge und einer maximalen Länge von 4.000 Zeichen. |
2 | nvarchar Unicode-Daten variabler Länge mit einer maximalen Länge von 4.000 Zeichen. |
3 | Nvarchar (max) Unicode-Daten variabler Länge mit einer maximalen Länge von 2 30 Zeichen (eingeführt in SQL Server 2005). |
4 | ntext Unicode-Daten variabler Länge mit einer maximalen Länge von 1.073.741.823 Zeichen. |
Binäre Zeichenfolgen
Sr.Nr. | Typ & Beschreibung |
---|---|
1 | binary Binärdaten mit fester Länge und einer maximalen Länge von 8.000 Byte. |
2 | varbinary Binärdaten variabler Länge mit einer maximalen Länge von 8.000 Bytes. |
3 | varbinary(max) Binärdaten variabler Länge mit einer maximalen Länge von 2 bis 31 Byte (eingeführt in SQL Server 2005). |
4 | image Binärdaten variabler Länge mit einer maximalen Länge von 2.147.483.647 Bytes. |
Andere Datentypen
sql_variant - Speichert Werte verschiedener von SQL Server unterstützter Datentypen, außer Text, ntext und Zeitstempel.
timestamp - Speichert eine datenbankweite eindeutige Nummer, die jedes Mal aktualisiert wird, wenn eine Zeile aktualisiert wird.
uniqueidentifier - Speichert eine global eindeutige Kennung (GUID).
xml- Speichert XML-Daten. Sie können XML-Instanzen in einer Spalte oder einer Variablen speichern (Einführung in SQL Server 2005).
cursor - Ein Verweis auf einen Cursor.
table - Speichert eine Ergebnismenge für die spätere Verarbeitung.
hierarchyid - Ein Systemdatentyp mit variabler Länge, der zur Darstellung der Position in einer Hierarchie verwendet wird (Einführung in SQL Server 2008).