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.
SQL Server-Datentypen
Beispiel für Datentypen in MS SQL
  • 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
In MS SQL Server verfügbarer Datentyp

MS SQL-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)

Hier

  • 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)]

Hier 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.