PostgreSQL

Типи та функції PostgreSQL UUID

Типи та функції PostgreSQL UUID

UUID PostgreSQL, або Універсальний унікальний ідентифікатор, визначений RFC 4122 і має 128-бітну довжину. Внутрішні алгоритми використовуються для побудови UUID, і кожне значення є різним. PostgreSQL має власний тип даних UUID і генерує їх за допомогою модулів. Тип даних UUID зазвичай відкидається в розподілених базах даних, оскільки цей тип даних забезпечує особливість, а не тип SERIAL, який генерує лише одиничні значення всередині однієї бази даних. Хоча PostgreSQL дозволяє зберігати та протиставляти значення UUID, в основі цього методу немає методів їх створення. Швидше, він покладається на сторонні пакети, які мають специфічні алгоритми генерації UUID.

Давайте тепер подивимося на певні подання значень UUID, як це видно на діаграмі нижче. UUID складається з 32 бітів шістнадцяткових цифр з до чотирма дефісами, як показано на схемі нижче. UUID також може мати значення 0, що означає, що всі біти порожні.

Створіть UIID у графічному інтерфейсі PostgreSQL pgAdmin 4

Відкрийте графічний інтерфейс PostgreSQL 'pgAdmin 4'. Далі підключіть користувача 'postgres' до сервера 'PostgreSQL 13', вказавши пароль для імені користувача. Натисніть кнопку "OK", щоб почати користуватися нею.

Пакет “uuid-ossp” буде встановлений у базі даних “test” за допомогою інструкції CREATE EXTENSION. Якщо ви належним чином дотримуєтесь інструкцій, наведених нижче, ви отримаєте повідомлення "СТВОРИТИ РОЗШИРЕННЯ", як показано на зображенні нижче. У наступній команді умова «ЯКЩО НЕ ІСНУЄ» відкидається, що дозволяє зупинити повторну інсталяцію пакета.

>> СТВОРИТИ РОЗШИРЕННЯ, ЯКЩО НЕ ІСНУЄ “uuid-ossp”;

У опції "Розширення" ви можете побачити нещодавно встановлений пакет "uuid-ossp".

Далі наведено перелік функцій, пов’язаних із встановленим пакетом uuid-ossp у базі даних „test“:

Метод “uuid_generate_v1 ()” може бути використаний для створення значень UUID і, залежно від поточної позначки часу, колекції MAC-адрес, яка також є довільним значенням. Коли наступну інструкцію буде виконано в області інструменту запиту, ми отримаємо наступний результат. Це покаже значення UUID, сформоване методом “uuid_generate_v1 ()”, як показано на знімку нижче.

>> ВИБЕРІТЬ uuid_generate_v1 ();

Створіть UIID у графічному інтерфейсі PostgreSQL pgAdmin 4

Відкрийте оболонку командного рядка PostgreSQL і підключіть її до сервера localhost або будь-якого іншого сервера, до якого ви хочете підключитися, вказавши його ім'я та натиснувши Enter. Ви можете змінити базу даних, вписавши її назву в рядок "База даних". Як бачите, ми використовуємо базу даних "test". Ви також можете змінити номер порту та ім’я користувача для перемикання. Після цього вас попросять ввести пароль для обраного користувача. Надавши пароль, ви будете готові піти. Якщо ви не хочете робити тут жодних змін, залиште пробіли порожніми.

Набір “uuid-ossp” можна встановити за допомогою запиту CREATE EXTENSION. Напишіть наступну команду в командній оболонці PostgreSQL, і ви зможете отримати наступне повідомлення “CREATE EXTENSION”. Ми також відкинули пункт "ЯКЩО НЕ ІСНУЄ", що дозволяє зупинити перевстановлення пакета.

>> СТВОРИТИ РОЗШИРЕННЯ, ЯКЩО НЕ ІСНУЄ “uuid-ossp”;

Функція “uuid_generate_v1 ()” буде використана для побудови значень UUID, обумовлених поточною міткою часу, групою MAC-адрес та випадковим значенням. Виконуючи наступний запит у просторі запитів, ви отримаєте наступний результат, який відображає значення UUID, створене методом “uuid_generate_v1 ()”.

>> ВИБЕРІТЬ uuid_generate_v1 ();

Метод “uuid_generate_v4 ()” може бути використаний для створення значення UUID, встановленого виключно із випадковими числами, як показано нижче. Це дасть результат, подібний до наведеного нижче.

>> ВИБЕРІТЬ uuid_generate_v4 ();

Приклад типу даних PostgreSQL UUID

Цей приклад показує, як працює тип даних PostgreSQL UIID. Ми використаємо команду CREATE для побудови окремої таблиці "Клієнт", а також полів UUID. Ідентифікатор клієнта, ім’я клієнта, прізвище клієнта, ідентифікатор електронної пошти клієнта та адреса клієнта - це лише декілька стовпців у таблиці «Клієнт». Ми використовуємо 'Client_id' як тип даних UUID, який також є первинним ключем. Метод “uuid_generate_v4 ()” також буде динамічно створювати основні основні значення стовпців. Спробуйте наступну команду СТВОРИТИ ТАБЛИЦЮ в області інструменту запиту, щоб побудувати таблицю «Клієнт» у базі даних «тест», де встановлений модуль uuid-ossp. Ви отримаєте повідомлення “СТВОРИТИ ТАБЛИЦЮ”, що означає, що таблиця створена належним чином.

Коли ви додаєте новий рядок, не вказуючи значення 'Client_id field', PostgreSQL може використовувати метод "uuid_generate_v4 ()" для створення значення "Client_id". З інструкцією INSERT ми вкладемо в неї кілька значень. Наступний екран відповідей з’явиться після виконання наведеної нижче інструкції, яка вказує на те, що зазначені значення були ефективно включені в таблицю «Клієнт».

Тепер ми отримаємо всі записи таблиці "Клієнт", використовуючи запит SELECT в інструменті редактора запитів. Ви отримаєте наступний результат після виконання наведеної нижче інструкції, яка відображатиме всю або більшу частину інформації в таблиці Клієнта. Поле "Client_id" буде зайнято значеннями UUID, що генеруються методом "uuid_generate_v4 ()", як показано на малюнку нижче.

>> ВИБРАТИ * З Клієнта;

Висновок

У цій статті висвітлено основні моменти в частині типу даних PostgreSQL UUID з використанням графічного інтерфейсу користувача PostgreSQL pgAdmin 4 та оболонки командного рядка, включаючи наступне:

Сподіваємось, під час роботи над типами та функціями UUID у PostgreSQL у вас не виникнуть жодні проблеми.

Встановіть останню стратегічну гру OpenRA на Ubuntu Linux
OpenRA - це ігровий движок Libre / Free Real Time Strategy, який відтворює ранні ігри Вествуда, такі як класичний Command & Conquer: Red Alert. Пошире...
Встановіть найновіший емулятор Dolphin для Gamecube & Wii на Linux
Емулятор Dolphin дозволяє грати у вибрані вами ігри Gamecube та Wii на персональних комп’ютерах Linux (ПК). Будучи вільно доступним і відкритим ігров...
Як використовувати GameConqueror Cheat Engine в Linux
Стаття висвітлює посібник із використання механізму читів GameConqueror в Linux. Багато користувачів, які грають у ігри в Windows, часто використовуют...