这行代码会报错的原因--3、利用SQL查询分析器用短语NOT NULL、UNIQUE、CHECK保证用户定义完整性 CREATE TABLE ST (SNO CHAR(5) , SNAME CHAR(8) , SSEX CHAR(2) , SAGE INT CONSTRAINT U2 CHECK (SAGE<=28), SDEPT CHAR(20), CONSTRAINT PK-Student1 PRIMARY KEY(SNO))
时间: 2023-12-07 14:05:20 浏览: 61
在这行代码中,有两个问题会导致报错:
1. 约束名称不能包含减号(-),因此需要将"PK-Student1"修改为一个有效的名称,例如"PK_Student1"。
2. 在约束"U2"中,应该使用小于等于符号(<=)而不是大于等于符号(>=),因为该约束将确保SAGE小于或等于28。
修改后的代码如下所示:
```
CREATE TABLE ST (
SNO CHAR(5),
SNAME CHAR(8),
SSEX CHAR(2),
SAGE INT CONSTRAINT U2 CHECK (SAGE<=28),
SDEPT CHAR(20),
CONSTRAINT PK_Student1 PRIMARY KEY(SNO)
);
```
阅读全文