Oracle SQL检查错误
为什么在使用检查约束时命令不起作用?当不包括支票时,可以添加该表Oracle SQL检查错误,oracle,ddl,Oracle,Ddl,为什么在使用检查约束时命令不起作用?当不包括支票时,可以添加该表 create table Car ( CarID number(32,0) NOT NULL , PurchaseDate date, Colour varchar2(10) NOT NULL CHECK (Colour IN ("Red", "Blue", "Green")), CONSTRAINT CAR_PK PRIMARY KEY (CarID),
create table Car (
CarID number(32,0) NOT NULL ,
PurchaseDate date,
Colour varchar2(10) NOT NULL CHECK (Colour IN ("Red", "Blue", "Green")),
CONSTRAINT CAR_PK PRIMARY KEY (CarID),
FOREIGN KEY (CarID) REFERENCES Vehicle(ID)
);
Error report -
SQL Error: ORA-02438: Column check constraint cannot reference other columns
02438. 00000 - "Column check constraint cannot reference other columns"
*Cause: attempted to define a column check constraint that references
another column.
*Action: define it as a table check constriant.
oracle SQL中不允许使用双引号尝试购买日期日期到PurchaseDate Date Date Date不是问题使用单引号而不是双引号表示状态文字。它应该是
检查(颜色在中),不检查(状态在中)和单引号而不是双引号这是引号造成的。谢谢
create table Car (
CarID number(32,0) NOT NULL ,
PurchaseDate date,
Colour varchar2(10) NOT NULL CHECK (Colour IN ('Red', 'Blue', 'Green')),
CONSTRAINT CAR_PK PRIMARY KEY (CarID),
FOREIGN KEY (CarID) REFERENCES Vehicle(ID)
);