在Oracle 10g中,如何在两个varchar字段上添加唯一的不区分大小写的约束?例如,给定表中已存在以下记录:
"Stephen", "Swensen"
"John", "Smith"
以下插入内容将无效:
"stephen", "Swensen"
"John", "smith"
"stephen", "swensen"
但是以下插入内容将是有效的:
"Stephen", "Smith"
"John", "Swensen"
最佳答案
假设您的表名为 person ,名字和姓氏列分别称为 first_name 和 last_name ,请添加以下唯一约束:
ALTER TABLE person ADD CONSTRAINT person_name_unique
UNIQUE(LOWER(first_name),LOWER(last_name));
让我知道我是否正确理解了您的问题,并对表的布局做出了正确的假设。
关于sql - 在两个varchar字段上创建不区分大小写的唯一约束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3944840/