Microsoft SQL-Server verwendet folgende Datentypen:
Typ | Bytes | Wertebereich |
bigint | 8 | ganze Zahlen von ![]() ![]() |
int | 4 | ganze Zahlen von ![]() ![]() |
smallint | 2 | ganze Zahlen von ![]() ![]() |
tinyint | 1 | ganze Zahlen von ![]() ![]() |
bit | 1 | ganze Zahlen von ![]() ![]() |
decimal(n,m) | n | numerische Daten mit fester Genauigkeit von ![]() ![]() |
numeric(n,m) | n | entspricht decimal |
money | 8 | Währungsdatenwerte von ![]() ![]() |
smallmoney | 2 | Währungsdatenwerte von ![]() ![]() |
real | 4 | Gleitkommazahlen von ![]() ![]() |
float | 8 | Gleitkommazahlen von ![]() ![]() |
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 ![]() |
|
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 ![]() |
|
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 ![]() |
|
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 Dezimalstellen
angezeigt, davon
Nachkommastellen.
int, smallint, tinyint und numeric können durch den Zusatz
identify(i,j) automatisch initialisert werden mit Startwert
und Schrittweite
.
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.