Microsoft SQL Server
Types de données
Recherche…
Introduction
Cette section présente les types de données que SQL Server peut utiliser, notamment leur plage de données, leur longueur et leurs limites (le cas échéant).
Numérique exacte
Il existe deux classes de base de types de données numériques exactes: Integer et Fixed Precision and Scale .
Types de données entiers
- bit
- tinyint
- smallint
- int
- bigint
Les entiers sont des valeurs numériques qui ne contiennent jamais de fraction, et utilisent toujours une quantité de stockage fixe. La plage et les tailles de stockage des types de données entiers sont présentées dans ce tableau:
Type de données | Gamme | Espace de rangement |
---|---|---|
bit | 0 ou 1 | 1 bit ** |
tinyint | 0 à 255 | 1 octet |
smallint | -2 ^ 15 (-32 768) à 2 ^ 15-1 (32 767) | 2 octets |
int | -2 ^ 31 (-2 147 443 648) à 2 ^ 31-1 (2 147 483 647) | 4 octets |
bigint | -2 ^ 63 (-9 223 372 036 854 775 808) à 2 ^ 63-1 (9 223 372 036 854 775 807) | 8 octets |
Précision fixe et types de données d'échelle
- numérique
- décimal
- petit argent
- argent
Ces types de données sont utiles pour représenter les nombres avec précision. Tant que les valeurs peuvent tenir dans la plage des valeurs pouvant être stockées dans le type de données, la valeur n'aura pas de problèmes d'arrondi. Ceci est utile pour tout calcul financier, où les erreurs d'arrondi entraîneront une folie clinique pour les comptables.
Notez que decimal et numeric sont des synonymes pour le même type de données.
Type de données | Gamme | Espace de rangement |
---|---|---|
Decimal [(p [, s])] ou Numeric [(p [, s])] | -10 ^ 38 + 1 à 10 ^ 38 - 1 | Voir tableau de précision |
Lors de la définition d'un type de données décimal ou numérique , vous devrez peut-être spécifier la précision [p] et l'échelle [s].
La précision est le nombre de chiffres pouvant être stockés. Par exemple, si vous deviez stocker des valeurs entre 1 et 999, vous auriez besoin d'une précision de 3 (pour contenir les trois chiffres de 100). Si vous ne spécifiez pas de précision, la précision par défaut est 18.
L'échelle est le nombre de chiffres après le point décimal. Si vous avez besoin de stocker un nombre compris entre 0,00 et 999,99, vous devez spécifier une précision de 5 (cinq chiffres) et une échelle de 2 (deux chiffres après le point décimal). Vous devez spécifier une précision pour spécifier une échelle. L'échelle par défaut est zéro.
La précision d'un type de données décimal ou numérique définit le nombre d'octets requis pour stocker la valeur, comme indiqué ci-dessous:
Tableau de précision
Précision | Octets de stockage |
---|---|
1 - 9 | 5 |
10-19 | 9 |
20-28 | 13 |
29-38 | 17 |
Types de données fixes monétaires
Ces types de données sont destinés spécifiquement à la comptabilité et à d'autres données monétaires. Ces types ont une échelle fixe de 4 - vous verrez toujours quatre chiffres après la décimale. Pour la plupart des systèmes fonctionnant avec la plupart des devises, utiliser une valeur numérique avec une échelle de 2 suffira. Notez qu'aucune information sur le type de devise représenté n'est enregistrée avec la valeur.
Type de données | Gamme | Espace de rangement |
---|---|---|
argent | -922 337 203 685 477,5808 à 922 337 203 685 477,5807 | 8 octets |
petit argent | -214.748.3648 à 214.748.3647 | 4 octets |
Numérique approximative
- float [( n )]
- réal
Ces types de données sont utilisés pour stocker des nombres à virgule flottante. Étant donné que ces types ne sont destinés qu'à contenir des valeurs numériques approximatives, celles-ci ne doivent pas être utilisées dans les cas où une erreur d'arrondi est inacceptable. Cependant, si vous avez besoin de traiter des nombres très importants ou des nombres avec un nombre indéterminé de chiffres après la décimale, cela peut être votre meilleure option.
Type de données | Gamme | Taille |
---|---|---|
flotte | -1,79E + 308 à -2,23E-308, 0 et 2,23E-308 à 1,79E + 308 | dépend de n dans le tableau ci-dessous |
réal | -3,40E + 38 à -1,18E - 38, 0 et 1,18E - 38 à 3,40E + 38 | 4 octets |
n tableau des valeurs pour les nombres flottants . Si aucune valeur n'est spécifiée dans la déclaration du flottant, la valeur par défaut de 53 sera utilisée. Notez que float (24) est l'équivalent d'une valeur réelle .
n valeur | Précision | Taille |
---|---|---|
1-24 | 7 chiffres | 4 octets |
25-53 | 15 chiffres | 8 octets |
Date et l'heure
Ces types sont dans toutes les versions de SQL Server
- datetime
- petit temps
Ces types sont dans toutes les versions de SQL Server après SQL Server 2012
- rendez-vous amoureux
- datetimeoffset
- datetime2
- temps
Chaînes de caractères
- carboniser
- varchar
- texte
Chaînes de caractères Unicode
- nchar
- nvarchar
- ntext
Cordes binaires
- binaire
- varbinary
- image
Autres types de données
- le curseur
- horodatage
- hierarchyid
- identifiant unique
- sql_variant
- xml
- table
- Types spatiaux