【发布时间】:2018-01-09 15:31:43
【问题描述】:
创建了下表:
CREATE TABLE VEHICLES
(vehicleVIN VARCHAR(30) PRIMARY KEY,
vehicleType VARCHAR(30) NOT NULL CHECK (vehicleType IN ('compact', 'midsize', 'fullsize', 'suv', 'truck')),
vehicleWhereFrom VARCHAR(30) NOT NULL CHECK (vehicleWhereFrom IN ('maryland','virginia','washington, d.c.'));
在运行插入命令时,带有大写字母的条目(例如:Compact、COMPACT、Maryland、VIRGINIA 等)违反了检查约束(错误 ORA-02290)。如何使检查约束不区分大小写?期望的结果是无论使用大小写,只要单词拼写正确,插入的数据就会被接受。通过 NOVA 使用 Oracle 数据库。谢谢!
【问题讨论】:
-
将这些列定义为不区分大小写的排序规则。
-
所以,类似:vehicleType VARCHAR(30) NOT NULL COLLATE BINARY_CI CHECK (vehicleType IN ('compact', 'midsize', 'fullsize', 'suv', 'truck')); ??
-
是的,或者其他不区分大小写的排序规则! (或其他不区分大小写的排序规则,取决于您的需要。)
标签: sql oracle novaclient