ORA-00900: 无效的 SQL 语句
CREATE TABLE Customers(
CustID number(5,0),
EmpID CHAR(1),
Cust_Name varchar(20) not null,
Cust_Address varchar(20) not null,
Cust_City varchar(20) not null,
Cust_State char(2) not null,
Cust_Zipcode number(5,0) not null,
Ship_Date date not null,
Order_Date date not null,
constraint ci_fk FOREIGN KEY (EmpID) references EMPLOYEES(EmpID),
constraint ci_ck check (Ship_Date>Order_Date)
)
有什么问题吗?
CREATE TABLE Customers(
CustID number(5,0),
EmpID CHAR(1),
Cust_Name varchar(20) not null,
Cust_Address varchar(20) not null,
Cust_City varchar(20) not null,
Cust_State char(2) not null,
Cust_Zipcode number(5,0) not null,
Ship_Date date not null,
Order_Date date not null,
constraint ci_fk FOREIGN KEY (EmpID) references EMPLOYEES(EmpID),
constraint ci_ck check (Ship_Date>Order_Date)
)
What's the problem?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
员工表不存在。
或者 EmpId 不是主键。
完成这些操作后,我的创建语句副本就起作用了。
Employees table does not exist.
or EmpId is not a primary key.
Once I did these, my copy of the create statement worked.
克里斯这么说。
将 CHAR 更改为 VARCHAR2,因为永远不应使用 CHAR。另外,number(5,0) 与 NUMBER(5) 相同,因此您可以使用它。
Chris said it.
Change CHAR to VARCHAR2 as CHAR should never be used. Also, number(5,0) is the same as NUMBER(5), so you can use that.
验证员工表是否存在。
验证Employees 表中的EmpID 列与Customers 表中的数据类型是否相同。
验证员工表中的 EmpID 列是否是员工表的主键。
Verify that the Employees table exists.
Verify that the EmpID column in the Employees table is of the same datatype as in the Customers table.
Verify that the EmpID column in the Employees table is the primary key of the employee table.