SQL Server-gegevenstypen met voorbeelden

Wat is gegevenstype?

A Data type in SQL Server wordt gedefinieerd als het type gegevens dat elke kolom of variabele kan opslaan. Het is een type gegevens dat een object bevat, zoals een geheel getal, teken, tekenreeks, enz. Wanneer u een tabel of variabele maakt, stelt u naast het opgeven van de naam ook het type gegevens in dat het zal opslaan.

Hoe MS SQL-gegevenstype te gebruiken

  • U moet vooraf definiรซren welk type gegevens een kolom of variabele kan opslaan. Het bepalen van het gegevenstype voorkomt ook dat de gebruiker onverwachte of ongeldige gegevens invoert.
  • U kunt efficiรซnt gebruik maken van het geheugen door een geschikt gegevenstype toe te wijzen aan de variabele of kolom, waardoor alleen de vereiste hoeveelheid systeemgeheugen wordt toegewezen voor de gegevens van de betreffende kolom.
  • MS SQL biedt een brede categorie basisgegevenstypen in SQL volgens de behoeften van de gebruiker, zoals datum, binaire afbeeldingen, enz.

Waarom DataTypes gebruiken?

Laten we een voorbeeld nemen van eenvoudig Aanmelden pagina van de websitetoepassing. Drie invoervelden zijn voornaam, achternaam en contactnummer.

Hier moeten we opmerken dat in realtime:

  • "Eerste achternaam" zal altijd zijn alfabetisch.
  • "Contact" zal altijd zijn numerieke.
SQL Server-gegevenstypen
Gegevenstypen Voorbeeld in MS SQL
  • Uit de bovenstaande afbeelding is het de moeite waard om te definiรซren "Eerste achternaam" een karakter maximaliseren en "Contact" als geheel getal.

Het is duidelijk dat in elke toepassing alle velden het ene of het andere type gegevens bevatten. Bijvoorbeeld numeriek, alfabetisch, datum en nog veel meer.

Houd er ook rekening mee dat verschillende gegevenstypen verschillende geheugenvereisten hebben. Daarom is het zinvoller om de kolom of te definiรซren variabele met het gegevenstype dat het kan bevatten voor efficiรซnt geheugengebruik.

Gegevenstype beschikbaar in MS SQL Server

Hier vindt u een lijst met MS SQL-servergegevenstypen:

MS SQL-server ondersteunt de volgende categorieรซn van gegevenstypen:

  • Exact numeriek
  • Geschat numeriek
  • Datum en tijd
  • Tekenreeksen
  • Unicode-tekenreeksen
  • Binaire tekenreeksen
  • Andere gegevenstypen
Gegevenstype beschikbaar in MS SQL Server

MS SQL-gegevenstypen

Exacte numerieke gegevenstypen in SQL

Exact numeriek heeft negen soorten subgegevenstypen in de SQL-server.

Exacte numerieke gegevenstypen

Data type Beschrijving Onderste limiet Bovengrens Geheugen
bigint Het slaat gehele getallen op in het opgegeven bereik โˆ’2^63 (โˆ’9,223,372, 036,854,775,808) 2^63โˆ’1 (โˆ’9,223,372, 036,854,775,807) 8 bytes
int Het slaat gehele getallen op in het opgegeven bereik โˆ’2^31 (โˆ’2,147, 483,648) 2^31โˆ’1 (โˆ’2,147, 483,647) 4 bytes
kleintje Het slaat gehele getallen op in het opgegeven bereik โˆ’2^15 (โˆ’32,767) 2^15 (-32,768) 2 bytes
kleinint Het slaat gehele getallen op in het opgegeven bereik 0 255 1 bytes
beetje De waarde kan 0, 1 of NULL zijn. 0 1 1 byte/8bit-kolom
decimale Wordt gebruikt voor schaal- en vaste precisiegetallen โˆ’10^38+1 10^381โˆ’1 5 tot 17 bytes
numerieke Wordt gebruikt voor schaal- en vaste precisiegetallen โˆ’10^38+1 10^381โˆ’1 5 tot 17 bytes
geld Gebruikte monetaire gegevens -922,337, 203, 685,477.5808 +922,337, 203, 685,477.5807 8 bytes
kleingeld Gebruikte monetaire gegevens -214,478.3648 +214,478.3647 4 bytes

Exacte numerieke gegevenstypen in SQL-server met voorbeelden:

Query:

DECLARE @Datatype_Int INT = 2
PRINT @Datatype_Int

uitgang

2

Syntaxis

Decimaal (P,S)

Hier

  • P is precisie
  • S is schaal

Query:

DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31
PRINT @Datatype_Decimal

uitgang

2.31

Geschatte numerieke gegevenstypen in SQL

SQL Geschatte numerieke categorie omvat drijvende-komma- en reรซle waarden. Deze datatypes in SQL worden meestal gebruikt in wetenschappelijke berekeningen.

Geschat numeriek gegevenstype

Data type Beschrijving Onderste limiet Bovengrens Geheugen precisie
vlotter(n) Gebruikt voor een zwevend precisiegetal โˆ’1.79E+308 1.79E + 308 Hangt af van de waarde van n 7 Digit
vast Gebruikt voor een zwevend precisiegetal โˆ’3.40E+38 3.40E + 38 4 bytes 15 Digit
Syntax:  FLOAT [(n)]

Hier n is het aantal bits dat wordt gebruikt om de mantisse van de drijven getal in wetenschappelijke notatie. Standaard is de waarde van n 53.

Wanneer de gebruiker een gegevenstype zoals float definieert, n moet een waarde tussen 1 en 53 zijn.

SQL Server-traktaties n als een van de twee mogelijke waarden. Als 1<=n<=24, wordt n behandeld als 24. Als 25<=n<=53, wordt n behandeld als 53.

Voorbeeldquery:

DECLARE @Datatype_Float FLOAT(24) = 22.1234
PRINT @Datatype_Float

uitgang

22.1234

Datum- en tijdgegevenstypen in SQL

Het slaat gegevens op van het type Datum en tijd.

Datum- en tijdgegevenstype

Data type Beschrijving Opslag grootte Nauwkeurigheid Lager bereik Bovenste bereik
Datum Tijd Wordt gebruikt voor het opgeven van een datum en tijd van 1 januari 1753 tot 31 december 9999. Het heeft een nauwkeurigheid van 3.33 milliseconden. 8 bytes Afgerond op stappen van .000, .003, .007 1753-01-01 9999-12-31
kleinedatetime Wordt gebruikt voor het specificeren van een datum en tijd van 1 januari 0001 tot 31 december 9999. Het heeft een nauwkeurigheid van 100 nanoseconden 4 bytes, vast 1 minuten 1900-01-01 2079-06-06
gegevens Wordt gebruikt om alleen de datum op te slaan van 1 januari 0001 tot 31 december 9999 3 bytes, vast 1 dagen 0001-01-01 9999-12-31
Time to Wordt gebruikt voor het opslaan van uitsluitend tijdwaarden met een nauwkeurigheid van 100 nanoseconden. 5 bytes 100 nanoseconden 00:00:00.0000000 23:59:59.9999999
datumtijdoffset Vergelijkbaar met datatime, maar heeft een tijdzone-offset 10 bytes 100 nanoseconden 0001-01-01 9999-12-31
datumtijd2 Wordt gebruikt voor het opgeven van een datum en tijd van 1 januari 0001 tot 31 december 9999 6 bytes 100 nanoseconden 0001-01-01 9999-12-31

Voorbeeldquery:

DECLARE @Datatype_Date DATE = '2030-01-01'
PRINT @Datatype_Date

uitgang

'2030-01-01'

Tekenreeksen Gegevenstypen in SQL

Deze categorie is gerelateerd aan een karaktertype. Hiermee kan de gebruiker het gegevenstype karakter definiรซren, dat een vaste en variabele lengte kan hebben. Het heeft vier soorten gegevenstypen. Hieronder vindt u de tekenreeks SQL-servergegevenstypen met voorbeelden.

Tekenreeksen Gegevenstypen

Data type Beschrijving Onderste limiet Bovengrens Geheugen
verkolen Het is een tekenreeks met een vaste breedte. Er kunnen maximaal 8,000 tekens worden opgeslagen. 0 tekens 8000 tekens n bytes
Varchar Dit is een tekenreeks met variabele breedte 0 tekens 8000 tekens n bytes + 2 bytes
Varchar (max) Dit is een tekenreeks met een variabele breedte. Er kunnen maximaal 1,073,741,824 tekens worden opgeslagen. 0 tekens 2^31 tekens n bytes + 2 bytes
tekst Dit is een tekenreeks met een variabele breedte. Er kan maximaal 2 GB aan tekstgegevens worden opgeslagen. 0 tekens 2,147,483,647 tekens n bytes + 4 bytes

Voorbeeldquery:

DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype'
PRINT @Datatype_Char

uitgang

Dit is het tekengegevenstype

Unicode-tekenreeksen Gegevenstypen in SQL

In deze categorie wordt het volledige bereik van Unicode-tekens opgeslagen die gebruik maken van de UTF-16-tekencodering.

Unicode-tekenreeksgegevenstypen

Data type Beschrijving Onderste limiet Bovengrens Geheugen
nachar Het is een Unicode-tekenreeks met een vaste breedte 0 tekens 4000 tekens 2 keer n bytes
nvarchar Het is een Unicode-tekenreeks met variabele breedte 0 tekens 4000 tekens 2 keer n bytes + 2 bytes
ntekst Het is een Unicode-tekenreeks met variabele breedte 0 tekens 1,073,741,823 tekens 2 keer de snaarlengte

Voorbeeldquery:

DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype'
PRINT @Datatype_nChar

uitgang

Dit is nCharacter-gegevenstype

Binaire tekenreeksgegevenstypen in SQL

Deze categorie bevat een binaire reeks met vaste en variabele lengte.

Binaire tekenreeksgegevenstypen

Data type Beschrijving Onderste limiet Bovengrens Geheugen
binair Het is een binaire string met vaste breedte. Er kan maximaal 8,000 bytes worden opgeslagen. 0 bytes 8000 bytes n bytes
varbinair Dit is een binaire reeks met variabele breedte. Er kan maximaal 8,000 bytes worden opgeslagen 0 bytes 8000 bytes De werkelijke lengte van de ingevoerde gegevens + 2 bytes
beeld Dit is een binaire reeks met variabele breedte. Er kan maximaal 2 GB worden opgeslagen. 0 bytes 2,147,483,647 bytes

Voorbeeldquery:

DECLARE @Datatype_Binary BINARY(2) = 12;
PRINT @Datatype_Binary

uitgang

0x000C

Andere gegevenstypen in SQL

Dit zijn andere verschillende SQL-servergegevenstypen met de onderstaande beschrijving:

Data type Beschrijving
Cursor De uitvoer is een kolom van sp_cursor_lijst maximaliseren en sp_describe_cursor.
Het retourneert de naam van de cursorvariabele.
Rij-versie Deze versie stempelt tabelrijen.
Hiรซrarchie Dit datatype vertegenwoordigt een positie in de hiรซrarchie
Unieke identificatie Conversie van een karakteruitdrukking.
SQL_variant Het slaat waarden op van door SQL-server ondersteunde gegevenstypen.
XML Het slaat XML-gegevens op in een kolom.
Type ruimtelijke geometrie Het vertegenwoordigt gegevens in een vlak coรถrdinatensysteem.
Type ruimtelijke geografie Het vertegenwoordigt gegevens in het coรถrdinatensysteem van de ronde aarde.
tafel Er wordt een resultatenset opgeslagen voor latere verwerking.

Interessante feiten!

  • CHAR-gegevenstype is sneller dan het gegevenstype SQL VARCHAR bij het ophalen van gegevens.

Samenvatting

  • Elke kolom in tabellen wordt tijdens het maken van de tabel gedefinieerd met zijn gegevenstype.
  • Er zijn zes hoofdcategorieรซn en รฉรฉn andere categorie met diversen. Andere diversen hebben negen subcategorieรซn van SQL-server gegevenstypen en -groottes beschikbaar.

Vat dit bericht samen met: