Data Type

1 h Niveau 1

Dans ce chapitre, nous allons parler des types de données utilisés dans PostgreSQL. Lors de la création d'une table, pour chaque colonne, vous spécifiez un type de données, c'est-à-dire le type de données que vous voulez stocker dans les champs de la table.

Cela permet plusieurs avantages :

  • Consistency − Les opérations sur des colonnes de même type de données donnent des résultats cohérents et sont généralement les plus rapides.
  • Validation − L'utilisation correcte des types de données implique la validation du format des données et le rejet des données hors de la portée du type de données.
  • Compactness − Comme une colonne peut stocker un seul type de valeur, elle est stockée de manière compacte.
  • Performance − Une utilisation appropriée des types de données permet un stockage plus efficace des données. Les valeurs stockées peuvent être traitées rapidement, ce qui améliore les performances.

PostgreSQL supporte un large ensemble de types de données. En outre, les utilisateurs peuvent créer leur propre type de données personnalisé en utilisant la commande SQL CREATE TYPE. Il existe différentes catégories de types de données dans PostgreSQL. Elles sont présentées ci-dessous.

Types numériques

Les types numériques se composent d'entiers de deux, quatre et huit octets, de nombres à virgule flottante de quatre et huit octets et de décimales de précision sélectionnable. Le tableau suivant répertorie les types disponibles.

Nom Taille de stockage Description Range
smallint 2 bytes Petit nombre d'entiers -32768 to +32767
integer 4 bytes Choix typique pour les entiers -2147483648 to +2147483647
bigint 8 bytes Grand nombre d'entiers -9223372036854775808 to 9223372036854775807
decimal variable Précision spécifiée par l'utilisateur, exact up to 131072 digits before the decimal point; up to 16383 digits after the decimal point
numeric variable Précision spécifiée par l'utilisateur, exact up to 131072 digits before the decimal point; up to 16383 digits after the decimal point
real 4 bytes Précision variable, inexacte 6 decimal digits precision
double precision 8 bytes Précision variable, inexacte 15 decimal digits precision
smallserial 2 bytes Petit entier auto incrémenté 1 to 32767
serial 4 bytes Nombre entier auto-incrémenté 1 to 2147483647
bigserial 8 bytes Grand entier auto incrémenté 1 to 9223372036854775807

Types monétaires

Le type money stocke un montant en devise avec une précision fractionnaire fixe. Les valeurs des types de données numeric, int et bigint peuvent être converties en argent. L'utilisation de nombres à virgule flottante n'est pas recommandée pour gérer l'argent en raison du risque d'erreurs d'arrondi.

Nom Taille de stockage Description Range
money 8 bytes Montant en devise -92233720368547758.08 to +92233720368547758.07

Types de caractères

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus