Sobes.tech
Junior — Middle

Използвали ли сте ENUM типове в PostgreSQL за съхраняване на ограничен набор от стойности?

sobes.tech AI

Отговор от AI

В PostgreSQL можете да създавате собствени ENUM типове за съхранение на ограничен набор от стойности, което помага за гарантиране целостта на данните и подобрява четливостта на схемата на базата данни. Например, ако трябва да съхранявате статус на поръчка, можете да дефинирате ENUM с възможните стойности:

CREATE TYPE order_status AS ENUM ('new', 'processing', 'shipped', 'delivered', 'cancelled');

CREATE TABLE orders (
    id SERIAL PRIMARY KEY,
    status order_status NOT NULL
);

Това гарантира, че в полето status ще има само допустимите стойности от списъка. В PHP, при работа с такива полета, обикновено се използват обикновени низове, но може да се добави допълнителна проверка или да се използват enum-ове в по-новите версии на PHP, за да съответстват на стойностите в базата.