Microsoft SQL Server
Datentypen
Suche…
Einführung
In diesem Abschnitt werden die Datentypen beschrieben, die SQL Server verwenden kann, einschließlich deren Datenbereich, Länge und Einschränkungen (falls vorhanden)
Genaue Numerik
Es gibt zwei grundlegende Klassen für genaue numerische Datentypen - Integer und Fixed Precision und Scale .
Ganzzahlige Datentypen
- bisschen
- Winzige
- smallint
- int
- Bigint
Ganzzahlen sind numerische Werte, die niemals einen Bruchteil enthalten und immer eine feste Speichermenge verwenden. Der Bereich und die Speichergrößen der Ganzzahldatentypen sind in dieser Tabelle dargestellt:
Datentyp | Angebot | Lager |
---|---|---|
bisschen | 0 oder 1 | 1 bit ** |
Winzige | 0 bis 255 | 1 Byte |
smallint | -2 ^ 15 (-32.768) bis 2 ^ 15-1 (32.767) | 2 Bytes |
int | -2 ^ 31 (-2.147.483.648) bis 2 ^ 31-1 (2.147.483.647) | 4 Bytes |
Bigint | -2 ^ 63 (-9.223.372.036.854.775,808) bis 2 ^ 63-1 (9.223.372.036.854.775.807) | 8 Bytes |
Fixed Precision und Scale Datentypen
- numerisch
- Dezimal
- kleines geld
- Geld
Diese Datentypen sind nützlich, um Zahlen genau darzustellen. Solange die Werte in den Bereich der Werte passen können, die im Datentyp gespeichert werden können, hat der Wert keine Rundungsprobleme. Dies ist nützlich für alle Finanzberechnungen, bei denen Rundungsfehler bei Buchhaltern zu klinischem Wahnsinn führen.
Beachten Sie, dass Dezimal und Numerisch Synonyme für denselben Datentyp sind.
Datentyp | Angebot | Lager |
---|---|---|
Dezimal [(p [, s])] oder Numerisch [(p [, s])]] | -10 ^ 38 + 1 bis 10 ^ 38 - 1 | Siehe Präzisionstabelle |
Bei der Definition eines dezimalen oder numerischen Datentyps müssen Sie möglicherweise die Genauigkeit [p] und die Skala [s] angeben.
Präzision ist die Anzahl der Ziffern, die gespeichert werden können. Wenn Sie beispielsweise Werte zwischen 1 und 999 speichern müssen, benötigen Sie eine Genauigkeit von 3 (um die drei Ziffern in 100 zu halten). Wenn Sie keine Genauigkeit angeben, ist die Standardgenauigkeit 18.
Skala ist die Anzahl der Stellen nach dem Dezimalpunkt. Wenn Sie eine Zahl zwischen 0,00 und 999,99 speichern müssen, müssen Sie eine Genauigkeit von 5 (fünf Stellen) und eine Skala von 2 (zwei Stellen nach dem Dezimalzeichen) angeben. Sie müssen eine Genauigkeit angeben, um eine Skala festzulegen. Die Standardskala ist Null.
Die Genauigkeit eines dezimalen oder numerischen Datentyps definiert die Anzahl der zum Speichern des Werts erforderlichen Bytes (siehe unten):
Präzisionstabelle
Präzision | Speicherbytes |
---|---|
1 - 9 | 5 |
10-19 | 9 |
20-28 | 13 |
29-38 | 17 |
Monetäre feste Datentypen
Diese Datentypen sind speziell für Buchhaltungs- und andere monetäre Daten vorgesehen. Diese Typen haben eine feste Skala von 4 - Sie sehen immer vier Stellen nach der Dezimalstelle. Für die meisten Systeme, die mit den meisten Währungen arbeiten, reicht es aus, einen numerischen Wert mit einer Skala von 2 zu verwenden. Beachten Sie, dass mit dem Wert keine Informationen zum dargestellten Währungstyp gespeichert werden.
Datentyp | Angebot | Lager |
---|---|---|
Geld | -922.337.203,685,477,5808 bis 922,337,203,685,477,5807 | 8 Bytes |
kleines geld | -214,748,3648 bis 214,748,3647 | 4 Bytes |
Ungefähre Numerik
- Float [( n )]
- echt
Diese Datentypen werden zum Speichern von Gleitkommazahlen verwendet. Da diese Typen nur annähernd numerische Werte enthalten sollen, sollten diese nicht in Fällen verwendet werden, in denen Rundungsfehler nicht akzeptabel sind. Wenn Sie jedoch mit sehr großen Zahlen oder Zahlen mit einer unbestimmten Anzahl von Nachkommastellen umgehen müssen, sind diese möglicherweise die beste Option.
Datentyp | Angebot | Größe |
---|---|---|
schweben | -1,79E + 308 bis -2,23E-308, 0 und 2,23E-308 bis 1,79E + 308 | hängt von n in der Tabelle unten ab |
echt | -3,40E + 38 bis -1,18E - 38, 0 und 1,18E - 38 bis 3,40E + 38 | 4 Bytes |
n Wertetabelle für Float- Nummern. Wenn in der Deklaration des Gleitkommas kein Wert angegeben ist, wird der Standardwert 53 verwendet. Beachten Sie, dass Float (24) einem realen Wert entspricht.
n Wert | Präzision | Größe |
---|---|---|
1-24 | 7 Ziffern | 4 Bytes |
25-53 | 15 Ziffern | 8 Bytes |
Datum und Uhrzeit
Diese Typen sind in allen Versionen von SQL Server enthalten
- Terminzeit
- Kleinzeit
Diese Typen sind in allen Versionen von SQL Server nach SQL Server 2012 enthalten
- Datum
- datetimeoffset
- datetime2
- Zeit
Zeichenketten
- verkohlen
- Varchar
- Text
Unicode-Zeichenfolgen
- nchar
- nvarchar
- ntext
Binäre Zeichenfolgen
- binär
- varbinary
- Bild
Andere Datentypen
- Mauszeiger
- Zeitstempel
- Hierarchieid
- eindeutige Kennung
- sql_variant
- xml
- Tabelle
- Räumliche Typen