Type de données PostgreSQL UUID

Type de données PostgreSQL UUID

UUID signifie Universal Unique Identific qui est défini par RFC 4122. La valeur UUID est calculée par un algorithme et la valeur est de 128 bits de long. L'UUID génère une valeur unique qui est meilleure que les données série qui génèrent des valeurs singulières. PostgreSQL n'a aucune fonction pour créer la valeur UUID. Cela dépend du module tiers nommé uuid-osp qui accède aux fonctions nécessaires pour créer la valeur UUID. Le chemin pour installer le uuid-osp Le module et les utilisations du type de données UUID dans la base de données PostgreSQL ont été affichés dans ce tutoriel.

Conditions préalables:

Vous devez installer la dernière version des packages PostgreSQL sur le système d'exploitation Linux avant d'exécuter les instructions SQL affichées dans ce tutoriel. Exécutez les commandes suivantes pour installer et démarrer le postgresql:

$ sudo apt-get -y installer postgresql postgresql-contrib
$ sudo systemctl start postgresql.service

Exécutez la commande suivante pour vous connecter à PostgreSQL avec l'autorisation racine:

$ sudo -u postgres psql

Installez le module UUID-OSSP:

Si la uuid-osp Le module n'est pas installé auparavant dans le PostgreSQL, puis exécutez la commande suivante pour installer le module. Ici, la clause `` sinon n'existe '' a été utilisée pour empêcher la réinstallation du module si elle est déjà installée.

# Créer une extension s'il n'existe pas "UUID-OSSP";

Après avoir installé le uuid-osp Module avec succès, exécutez la commande SELECT suivante pour générer un UUID en fonction de l'adresse MAC de l'ordinateur, de la valeur horodato et d'une valeur aléatoire. Ici le uuid_generate_v1 () La fonction a été utilisée pour générer la valeur unique.

# Select uuid_generate_v1 ();

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus:

Exécutez la commande SELECT suivante pour générer UUID en fonction de la valeur aléatoire. Ici le uuid_generate_v4 () La fonction a été utilisée pour générer la valeur unique.

# Select uuid_generate_v4 ();

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus:

Utilisation de l'UUID dans PostgreSQL:

Avant de créer une table avec le type de données booléen, vous devez créer une base de données postgresql. Donc, exécutez la commande suivante pour créer une base de données nommée 'testdb':

# Créer une base de données testdb;

La sortie suivante apparaîtra après avoir créé la base de données:

Créez un tableau à l'aide du type de données UUID:

L'ID de facture est toujours unique pour tout document de facture. Le type de données UUID est une meilleure option pour créer un ID unique. Créer une table nommée 'Facture'Dans la base de données actuelle avec quatre champs. Le premier nom de champ est Invoice_id qui est la clé principale du tableau. Le type de données de ce champ est Uuid. Si aucune valeur n'est fournie pour le Invoice_id Champ au moment de l'insertion de données, puis la valeur par défaut sera générée en utilisant la fonction UUID_GENERETER_V4 (). Le deuxième nom de champ est Order_Date et le type de données de ce champ est DATE qui sera utilisé pour stocker la date de commande. Le troisième nom de champ est N ° de client et le type de données de ce champ est Char (6) pour stocker la valeur de la chaîne de 4 caractères. Le quatrième champ est Montant de la commande et le type de données de ce champ est Int Pour stocker le montant de la commande.

# Créer une facture de table (
Invoice_id uuid par défaut uuid_generate_v4 (),
ORDER_DATE DATE NON NULL,
Customer_id char (6) pas null,
Order_amount int not null,
Clé primaire (invoice_id));

La sortie suivante apparaîtra si le tableau est créé avec succès:

Exécutez la requête d'insertion suivante pour insérer quatre enregistrements dans le Facture tableau. Les valeurs pour le Invoice_id Le champ n'est pas donné dans la requête suivante. Alors le uuid_generate_v4 () La fonction générera les valeurs pour le Invoice_id champ.

# Insérer dans la facture (Order_Date, Customer_ID, ORDER_AMOUNT)
Valeurs («10 mai 2022», «893456», 70000),
(«12 mai 2022», «885634», 65000),
(«17 mai 2022», «985632», 30000),
(«21 mai 2022», «891256», 23000);

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus. La sortie montre que quatre enregistrements ont été correctement insérés dans le Facture tableau:

Exécutez la requête de sélection suivante pour lire tous les enregistrements dans le Facture tableau:

# SELECT * FROM FAVOICE;

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus. La sortie montre les quatre ID unique générés pour le Invoice_id champ:

Exécutez ce qui suit SÉLECTIONNER requête qui lira ces enregistrements de la Table de facture où la valeur du date de commande Le champ est inférieur à «2022-05-15»:

# SELECT * dans la facture où Order_Date < '2022-05-15';

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus. Le tableau contient deux enregistrements où la valeur du date de commande est inférieur à «2022-05-15».

Exécutez ce qui suit SÉLECTIONNER requête qui lira ces enregistrements de la table de facture où la valeur du date de commande Le champ se situe entre «2022-05-15» et «2022-05-20».

# SELECT * FROM FAVOICE WHERE ORDER_DATE Entre '2022-05-15' et '2022-05-20';

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus. Le tableau contient un enregistrement qui correspond à la condition.

Exécutez ce qui suit SÉLECTIONNER requête qui lira ces enregistrements de la table de facture où la valeur du montant de la commande est supérieur à 50000.

# SELECT * FROM FACOUCE WHERE ORDER_AMOUNT> 50000;

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus. Deux enregistrements existent dans le tableau où la valeur du montant de la commande est supérieur à 50000.

Exécutez ce qui suit SÉLECTIONNER requête qui lira ces enregistrements de la table de facture où la valeur du montant de la commande est supérieur à 50000 et moins de 70000.

# SELECT * FROM Facture Where Order_Amount> 50000 et Order_Amount < 70000;

La sortie suivante apparaîtra après avoir exécuté la requête ci-dessus. Le tableau contient un enregistrement qui correspond à la condition.

Conclusion:

La façon d'utiliser le Type de données UUID et l'utilisation de ce type de données pour générer une pièce d'identité unique dans Postgresql Des tables ont été présentées dans ce tutoriel. Le but d'utiliser le Type de données UUID sera effacé après avoir lu ce tutoriel correctement.