Microsoft SQL-Server verwendet folgende Datentypen:
Typ | Bytes | Wertebereich |
bigint | 8 | ganze Zahlen von -263 bis +263 |
int | 4 | ganze Zahlen von -231 bis +231 |
smallint | 2 | ganze Zahlen von -215 bis +215 |
tinyint | 1 | ganze Zahlen von 0 bis 255 |
bit | 1 | ganze Zahlen von 0 bis 1 |
decimal(n,m) | n | numerische Daten mit fester Genauigkeit von -1038 bis +1038 |
numeric(n,m) | n | entspricht decimal |
money | 8 | Währungsdatenwerte von -263 bis +263 |
smallmoney | 2 | Währungsdatenwerte von -215 bis +215 |
real | 4 | Gleitkommazahlen von -1038 bis +1038 |
float | 8 | Gleitkommazahlen von -10308 bis +10308 |
datetime | 8 | Zeitangaben von 01.01.1753 bis 31.12.9999 |
smalldatetime | 4 | Zeitangaben von 01.01.1900 bis 06.06.2079 |
char(n) | n | String fester Länge mit maximal 8.000 Zeichen |
varchar(n) | String variabler Länge mit maximal 8.000 Zeichen | |
text | String variabler Länge mit maximal 231 Zeichen | |
nchar(n) | 2n | Unicode-Daten fester Länge mit maximal 4.000 Zeichen |
nvarchar(n) | Unicode-Daten variabler Länge mit maximal 4.000 Zeichen | |
ntext | Unicode-Daten variabler Länge mit maximal 230 Zeichen | |
binary | Binärdaten fester Länge mit maximal 8.000 Bytes | |
nbinary | Binärdaten variabler Länge mit maximal 8.000 Bytes | |
image | Binärdaten variabler Länge mit maximal 231 Bytes | |
rowversion | 8 | Datenbank-eindeutiger Wert |
uniqueidentifier | 16 | weltweit eindeutiger Wert |
NULL bezeichnet nicht besetzte Attributwerte
default bezeichnet vorbesetzte Attributwerte.
numeric(n,m)-Werte werden mit n Dezimalstellen angezeigt, davon m Nachkommastellen.
int, smallint, tinyint und numeric können durch den Zusatz identify(i,j) automatisch initialisert werden mit Startwert i und Schrittweite j.
Typ money-Werte werden mit 4 Nachkommastellen angezeigt.
datetime-Werte bestehen aus zwei 4-Byte-Worten: die Anzahl der Tage vor oder nach dem Basisdatum 01.01.1900 sowie die Anzahl der Millisekunden seit Mitternacht.
smalldatetime-Werte bestehen aus zwei 2-Byte-Werten: die Anzahl der Tage seit dem 01.01.1900 sowie die Anzahl der Minuten seit Mitternacht.
Spalten vom Typ binary oder image speichern umfangreiche Binärdaten innerhalb eines Zeilentupels und erfordern zusätzliche Zugriffstechniken, um die Daten einzufügen oder auszulesen.
Spalten vom Typ rowversion (früher: timestamp) sind innerhalb einer Datenbank eindeutig. Sie werden automatisch für die betreffende Zeile bei einer INSERT- oder UPDATE-Operation zugewiesen.
Spalten vom Typ uniqueidentifier können durch die Funktion newid() einen (hoffentlich) weltweit eindeutigen Identifier erhalten.