mda*_*shs 4 sql oracle oracle10g oracle11g
我试图在Oracle 11g中执行此脚本并收到以下错误,我不知道我在哪里错过了paranthesis或错误是什么,请帮助我弄明白这一点.
脚本:
CREATE TABLE User_Role (
user_role_id INT NOT NULL ,
Users_user_id INT FOREIGN KEY REFERENCES Users(user_id),
User_Types_user_type VARCHAR(20) FOREIGN KEY REFERENCES User_Types(user_type),
PRIMARY KEY(user_role_id)
)
Run Code Online (Sandbox Code Playgroud)
错误:
ORA-00907:遗失右侧的父母
删除FOREIGN KEY
条款.重写您的CREATE TABLE
声明如下:
CREATE TABLE User_Role (
user_role_id INT NOT NULL ,
Users_user_id INT REFERENCES Users(user_id),
User_Types_user_type VARCHAR(20) REFERENCES User_Types(user_type),
PRIMARY KEY(user_role_id)
)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,Oracle将生成约束名称.如果你想给他们更有意义的名字,你可以写下你的create table
陈述如下:
CREATE TABLE User_Role1 (
user_role_id INT NOT NULL ,
Users_user_id INT ,
User_Types_user_type VARCHAR(20) ,
constraint PK_YourTable PRIMARY KEY(user_role_id),
constraint FK_Table_1 foreign key(Users_user_id) REFERENCES Users(user_id),
constraint FK_Table_2 foreign key(User_Types_user_type) REFERENCES User_Types(user_type)
)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
32825 次 |
最近记录: |