Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何创建具有主键、外键、唯一、非空和检查约束的3个表_Sql_Oracle_Constraints_Ddl - Fatal编程技术网

Sql 如何创建具有主键、外键、唯一、非空和检查约束的3个表

Sql 如何创建具有主键、外键、唯一、非空和检查约束的3个表,sql,oracle,constraints,ddl,Sql,Oracle,Constraints,Ddl,我想为它们创建3个表和3个外键,但我收到了这个错误 ORA-00942:表或视图不存在 我的主要项目问题在底部。如何避免此错误。谢谢你的帮助 1.请创建关于某个科目的相关三个表格(针对实验学生、员工、产品、书籍、, 俱乐部(会员资格、爱好等),每个俱乐部必须至少包含一个主键,一个外键 键、唯一、非空和检查约束 CREATE TABLE Student ( StudentID varchar2(10) NOT NULL, StudentName varchar2(50)NOT NU

我想为它们创建3个表和3个外键,但我收到了这个错误

ORA-00942:表或视图不存在

我的主要项目问题在底部。如何避免此错误。谢谢你的帮助

1.请创建关于某个科目的相关三个表格(针对实验学生、员工、产品、书籍、, 俱乐部(会员资格、爱好等),每个俱乐部必须至少包含一个主键,一个外键 键、唯一、非空和检查约束

CREATE TABLE Student
(
    StudentID varchar2(10) NOT NULL,
    StudentName varchar2(50)NOT NULL, 
    StudentAddress varchar2(50),
    typeID varchar2(10)
    constraint pk_Student PRIMARY KEY (StudentID),
    constraint fk_types foreign key (typeID) references Types (typeID)
);

CREATE TABLE Book
(
    BookID varchar2(10) NOT NULL,
    BookName varchar2(40) NOT NULL UNIQUE, 
    ISBN number UNIQUE,
    loan_date NOT NULL,
    constraint pk_Book PRIMARY KEY (BookID),
    constraint fk_History FOREIGN KEY (loan_date) REFERENCES History (loan_date)
);         

CREATE TABLE History
(
    loan_date NUMBER NOT NULL,
    BookID varchar2(10),
    return_date NUMBER,
    constraint pk_History PRIMARY KEY (loan_date),
    constraint fk_Book    FOREIGN KEY (BookID) REFERENCES Book(BookID)
    
);

首先创建表,然后创建主键,然后创建外键

CREATE TABLE ABC ...
CREATE TABLE XYZ ...

ALTER TABLE ABC ADD CONSTRAINT PK_ABC PRIMARY KEY ...
ALTER TABLE XYZ ADD CONSTRAINT PK_XYZ PRIMARY KEY ...

ALTER TABLE ABC ADD CONSTRAINT FK_ABC FOREIGN KEY ...    
ALTER TABLE XYZ ADD CONSTRAINT FK_XYZ FOREIGN KEY ...

我肯定你不能为MySQL安装
ORA-00942
。请只使用您真正操作的DBMS的一个标记。您的代码中没有表
类型
。第一个create语句显然应该失败。顺便说一句,ISBN不是一个数字,它可以包含一个“X”。如果必须在图书馆中复制同一本书,则书名和ISBN可能不唯一。load_date和return_date是日期,load_date是历史的主键,除非每天只借出一本书。只是说。。。