Привіт, я не можу отримати обмеження, працюючи так, як я очікую в postgreSQL. Зсередини pgadmin я виконую наступний SQL-запит.
-- Check: "TypeCheck"
-- ALTER TABLE "ComLog" DROP CONSTRAINT "TypeCheck";
ALTER TABLE "ComLog"
ADD CONSTRAINT "TypeCheck" CHECK ("Type" SIMILAR TO 'email|post|IRL|minutes');
COMMENT ON CONSTRAINT "TypeCheck" ON "ComLog" IS 'One of email|post|IRL|minutes';
Після виконання цього перетворюється в.
-- Check: "TypeCheck"
-- ALTER TABLE "ComLog" DROP CONSTRAINT "TypeCheck";
ALTER TABLE "ComLog"
ADD CONSTRAINT "TypeCheck" CHECK ("Type" ~ similar_escape('email|post|IRL|minutes'::text, NULL::text));
COMMENT ON CONSTRAINT "TypeCheck" ON "ComLog" IS 'One of email|post|IRL|minutes';
Я очікую, що це обмежить моє введення для стовпця "Типи" однією з повідомлень електронної пошти IRL або хвилин. Однак при введенні даних таблиці це обмеження не вдається, коли я ввожу один із цих типів. Стовпець "Типи" має характер символів. Хтось знає, як це виправити. Дякую.
CHECK (type in ('email','post','IRL','minutes')
?