SQL Server-Datentypen mit Beispielen
Was ist ein Datentyp?
A Dateityp In SQL Server ist der Datentyp definiert, den jede Spalte oder Variable speichern kann. Dabei handelt es sich um einen Datentyp, den ein Objekt enthรคlt, z. B. Ganzzahl, Zeichen, Zeichenfolge usw. Beim Erstellen einer Tabelle oder Variablen legen Sie neben der Angabe des Namens auch den Datentyp fest, der gespeichert werden soll.
So verwenden Sie den MS SQL-Datentyp
- Sie mรผssen im Voraus definieren, welche Art von Daten eine Spalte oder Variable speichern kann. Durch die Bestimmung des Datentyps wird auรerdem verhindert, dass der Benutzer unerwartete oder ungรผltige Daten eingibt.
- Sie kรถnnen den Speicher effizient nutzen, indem Sie einer Variablen oder Spalte einen geeigneten Datentyp zuweisen, der nur die erforderliche Menge an Systemspeicher fรผr die Daten der jeweiligen Spalte zuweist.
- MS SQL bietet eine breite Kategorie grundlegender Datentypen in SQL entsprechend den Anforderungen des Benutzers, z. B. Datum, Binรคrbilder usw.
Warum DataTypes verwenden?
Nehmen wir eine Probe von einfach Anmeldeseite der Website-Anwendung. Drei Eingabefelder sind Vorname, Nachname und Kontaktnummer.
Hier sollten wir Folgendes in Echtzeit beachten:
- "Erster Nachname" wird immer sein alphabetisch.
- "Kontakt" wird immer sein numerisch.

- Anhand des obigen Bildes lohnt es sich, es zu definieren "Erster Nachname" als ein Charakter und "Kontakt" als ganze Zahl.
Es ist offensichtlich, dass in jeder Anwendung alle Felder den einen oder anderen Datentyp enthalten. ZB numerisch, alphabetisch, Datum und viele mehr.
Beachten Sie auรerdem, dass unterschiedliche Datentypen unterschiedliche Speicheranforderungen haben. Daher ist es sinnvoller, die Spalte bzw. zu definieren Variable Mit dem Datentyp wird eine effiziente Speichernutzung gewรคhrleistet.
In MS SQL Server verfรผgbarer Datentyp
Hier ist die Liste der MS SQL Server-Datentypen:
MS SQL-Server unterstรผtzt folgende Datentypkategorien:
- Exakte Zahl
- Ungefรคhre Zahl
- Datum und Uhrzeit
- Zeichenfolgen
- Unicode-Zeichenfolgen
- Binรคre Zeichenfolgen
- Andere Datentypen
Exakte numerische Datentypen in SQL
Exact Numeric verfรผgt in SQL Server รผber neun Arten von Unterdatentypen.
Genaue numerische Datentypen
| Dateityp | Beschreibung | Untere Grenze | Obergrenze | Memory |
|---|---|---|---|---|
| bigint | Es speichert ganze Zahlen im angegebenen Bereich | โ2^63 (โ9,223,372, 036,854,775,808) | 2^63โ1 (โ9,223,372, 036,854,775,807) | 8 bytes |
| int | Es speichert ganze Zahlen im angegebenen Bereich | โ2^31 (โ2,147, 483,648) | 2^31โ1 (โ2,147, 483,647) | 4 bytes |
| smallint | Es speichert ganze Zahlen im angegebenen Bereich | โ2^15 (โ32,767) | 2^15 (โ32,768) | 2 bytes |
| Tinyint | Es speichert ganze Zahlen im angegebenen Bereich | 0 | 255 | 1 Bytes |
| Bit | Es kann 0-, 1- oder NULL-Werte annehmen. | 0 | 1 | 1 Byte/8-Bit-Spalte |
| dezimal | Wird fรผr Skalenzahlen und Zahlen mit fester Genauigkeit verwendet | โ10^38+1 | 10^381โ1 | 5 bis 17 Byte |
| numerisch | Wird fรผr Skalenzahlen und Zahlen mit fester Genauigkeit verwendet | โ10^38+1 | 10^381โ1 | 5 bis 17 Byte |
| Geld | Verwendete monetรคre Daten | โ922,337, 203, 685,477.5808 | +922,337, 203, 685,477.5807 | 8 bytes |
| kleines Geld | Verwendete monetรคre Daten | -214,478.3648 | +214,478.3647 | 4 bytes |
Exakte numerische Datentypen in SQL Server mit Beispielen:
Abfrage:
DECLARE @Datatype_Int INT = 2 PRINT @Datatype_Int
Ausgang
2
Syntax
Dezimal (P,S)
Dabei steht:
- P ist Prรคzision
- S ist Maรstab
Abfrage:
DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31 PRINT @Datatype_Decimal
Ausgang
2.31
Ungefรคhre numerische Datentypen in SQL
SQL Die Kategorie โAnnรคherungswerteโ umfasst Gleitkomma- und reelle Werte. Diese Datentypen in SQL werden hauptsรคchlich in wissenschaftlichen Berechnungen verwendet.
Ungefรคhrer numerischer Datentyp
| Dateityp | Beschreibung | Untere Grenze | Obergrenze | Memory | Prรคzision |
|---|---|---|---|---|---|
| float(n) | Wird fรผr eine Zahl mit Gleitkommazahl verwendet | โ1.79E+308 | 1.79E + 308 | Hรคngt vom Wert von n ab | 7 Digit |
| echt | Wird fรผr eine Zahl mit Gleitkommazahl verwendet | โ3.40E+38 | 3.40E + 38 | 4 bytes | 15 Digit |
Syntax: FLOAT [(n)]
Dabei steht: n ist die Anzahl der Bits, die zum Speichern der Mantisse des verwendet werden schweben Zahl in wissenschaftlicher Notation. Standardmรครig betrรคgt der Wert von n 53.
Wenn der Benutzer einen Datentyp wie Float definiert, n sollte ein Wert zwischen 1 und 53 sein.
SQL Server behandelt n als einer von zwei mรถglichen Werten. Wenn 1<=n<=24, wird n als 24 behandelt. Wenn 25<=n<=53, wird n als 53 behandelt.
Beispielabfrage:
DECLARE @Datatype_Float FLOAT(24) = 22.1234 PRINT @Datatype_Float
Ausgang
22.1234
Datums- und Uhrzeitdatentypen in SQL
Es speichert Daten vom Typ Datum und Uhrzeit.
Datentyp โDatum und Uhrzeitโ.
| Dateityp | Beschreibung | Speichergrรถรe | Genauigkeit | Unterer Bereich | Oberer Bereich |
|---|---|---|---|---|---|
| Terminzeit | Wird zur Angabe eines Datums und einer Uhrzeit vom 1. Januar 1753 bis zum 31. Dezember 9999 verwendet. Die Genauigkeit betrรคgt 3.33 Millisekunden. | 8 bytes | Auf Schritte von .000, .003, .007 gerundet | 1753-01-01 | 9999-12-31 |
| smalldatetime | Wird zur Angabe eines Datums und einer Uhrzeit vom 1. Januar 0001 bis 31. Dezember 9999 verwendet. Die Genauigkeit betrรคgt 100 Nanosekunden | 4 Bytes, fest | 1 Minuten | 1900-01-01 | 2079-06-06 |
| Datum | Wird nur zum Speichern von Daten vom 1. Januar 0001 bis 31. Dezember 9999 verwendet | 3 Bytes, fest | 1 Tag | 0001-01-01 | 9999-12-31 |
| Zeit | Wird nur zum Speichern von Zeitwerten mit einer Genauigkeit von 100 Nanosekunden verwendet. | 5 bytes | 100 Nanosekunden | 00:00:00.0000000 | 23:59:59.9999999 |
| datetimeoffset | รhnlich wie datatime, weist jedoch einen Zeitzonenversatz auf | 10 bytes | 100 Nanosekunden | 0001-01-01 | 9999-12-31 |
| Datum/Uhrzeit2 | Wird zur Angabe eines Datums und einer Uhrzeit vom 1. Januar 0001 bis 31. Dezember 9999 verwendet | 6 bytes | 100 Nanosekunden | 0001-01-01 | 9999-12-31 |
Beispielabfrage:
DECLARE @Datatype_Date DATE = '2030-01-01' PRINT @Datatype_Date
Ausgang
'2030-01-01'
Zeichenketten-Datentypen in SQL
Diese Kategorie bezieht sich auf einen Charaktertyp. Es ermรถglicht dem Benutzer, den Datentyp des Zeichens zu definieren, das eine feste und variable Lรคnge haben kann. Es gibt vier Arten von Datentypen. Nachfolgend sind die Zeichenfolgen-SQL-Server-Datentypen mit Beispielen aufgefรผhrt.
Datentypen fรผr Zeichenfolgen
| Dateityp | Beschreibung | Untere Grenze | Obergrenze | Memory |
|---|---|---|---|---|
| verkohlen | Es handelt sich um eine Zeichenfolge mit fester Breite. Es speichert maximal 8,000 Zeichen. | 0 Zeichen | 8000 Zeichen | n Byte |
| varchar | Dies ist eine Zeichenfolge mit variabler Breite | 0 Zeichen | 8000 Zeichen | n Bytes + 2 Bytes |
| Varchar (maximal) | Dies ist eine Zeichenfolge mit variabler Breite. Es speichert maximal 1,073,741,824 Zeichen. | 0 Zeichen | 2^31 Zeichen | n Bytes + 2 Bytes |
| Text | Dies ist eine Zeichenfolge mit variabler Breite. Es speichert maximal 2 GB Textdaten. | 0 Zeichen | 2,147,483,647 Zeichen | n Bytes + 4 Bytes |
Beispielabfrage:
DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype' PRINT @Datatype_Char
Ausgang
Dies ist der Zeichendatentyp
Unicode-Zeichenfolgen-Datentypen in SQL
In dieser Kategorie wird der gesamte Bereich der Unicode-Zeichen gespeichert, die die UTF-16-Zeichenkodierung verwenden.
Datentypen fรผr Unicode-Zeichenfolgen
| Dateityp | Beschreibung | Untere Grenze | Obergrenze | Memory |
|---|---|---|---|---|
| nchar | Es handelt sich um eine Unicode-Zeichenfolge mit fester Breite | 0 Zeichen | 4000 Zeichen | 2 mal n Bytes |
| nvarchar | Es handelt sich um eine Unicode-Zeichenfolge mit variabler Breite | 0 Zeichen | 4000 Zeichen | 2 mal n Bytes + 2 Bytes |
| ntext | Es handelt sich um eine Unicode-Zeichenfolge mit variabler Breite | 0 Zeichen | 1,073,741,823 Zeichen | 2-fache Saitenlรคnge |
Beispielabfrage:
DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype' PRINT @Datatype_nChar
Ausgang
Dies ist der nCharacter-Datentyp
Binรคre String-Datentypen in SQL
Diese Kategorie enthรคlt eine binรคre Zeichenfolge fester und variabler Lรคnge.
Binรคre String-Datentypen
| Dateityp | Beschreibung | Untere Grenze | Obergrenze | Memory |
|---|---|---|---|---|
| binรคr | Es handelt sich um eine Binรคrzeichenfolge mit fester Breite. Es speichert maximal 8,000 Bytes. | 0 bytes | 8000 bytes | n Byte |
| varbinary | Dies ist eine binรคre Zeichenfolge variabler Breite. Es speichert maximal 8,000 Bytes | 0 bytes | 8000 bytes | Die tatsรคchliche Lรคnge der eingegebenen Daten + 2 Bytes |
| Image | Dies ist eine binรคre Zeichenfolge variabler Breite. Es speichert maximal 2 GB. | 0 bytes | 2,147,483,647 bytes |
Beispielabfrage:
DECLARE @Datatype_Binary BINARY(2) = 12; PRINT @Datatype_Binary
Ausgang
0x000C
Andere Datentypen in SQL
Dies sind weitere verschiedene SQL Server-Datentypen mit der folgenden Beschreibung:
| Dateityp | Beschreibung |
|---|---|
| Cursor | Seine Ausgabe ist eine Spalte von sp_cursor_list und sp_describe_cursor. Es gibt den Namen der Cursorvariablen zurรผck. |
| Zeilenversion | Diese Version stempelt Tabellenzeilen. |
| Hierarchieid | Dieser Datentyp reprรคsentiert eine Position in der Hierarchie |
| Eindeutige Kennung | Konvertierung aus einem Zeichenausdruck. |
| Sql_variant | Es speichert Werte von vom SQL Server unterstรผtzten Datentypen. |
| XML | Es speichert XML-Daten in einer Spalte. |
| Rรคumlicher Geometrietyp | Es stellt Daten in einem flachen Koordinatensystem dar. |
| Typ โRaumgeographieโ. | Es stellt Daten im runden Erdkoordinatensystem dar. |
| Tabelle | Es speichert einen Ergebnissatz zur spรคteren Verarbeitung. |
Interessante Fakten!
- CHAR-Datentyp ist beim Abrufen von Daten schneller als der SQL-VARCHAR-Datentyp.
Zusammenfassung
- Jede Spalte in Tabellen wird wรคhrend der Tabellenerstellung mit ihrem Datentyp definiert.
- Es gibt sechs Hauptkategorien und eine weitere Kategorie. Die Kategorie โSonstigesโ hat neun Unterkategorien von SQL Server Datentypen und -grรถรen verfรผgbar.
