创建三张表: 图书表 book (b_no 总编号,b_type分类号,b_name书名, b_author作者,b_publish出版单位,b_price 单价) 读者表reader(r_no借书证号, r_unit单位, r_name姓名,r_sex性别,r_pro职称,r_address地址) 借阅表borrow(r_no借书证号, b_no总编号,b_time借书日期) 约束: 图书表主键b_no,sex性别设置约束:男和女,地址设置默认值”宿舍”。
时间: 2024-03-22 10:41:10 浏览: 77
你可以使用以下SQL语句在Oracle数据库中创建三张表:
```sql
-- 创建图书表
CREATE TABLE book (
b_no NUMBER(10) PRIMARY KEY,
b_type VARCHAR2(20),
b_name VARCHAR2(100),
b_author VARCHAR2(50),
b_publish VARCHAR2(100),
b_price NUMBER(10, 2)
);
-- 创建读者表
CREATE TABLE reader (
r_no NUMBER(10) PRIMARY KEY,
r_unit VARCHAR2(100),
r_name VARCHAR2(50),
r_sex VARCHAR2(2) CONSTRAINT check_sex CHECK (r_sex IN ('男', '女')),
r_pro VARCHAR2(20),
r_address VARCHAR2(100) DEFAULT '宿舍'
);
-- 创建借阅表
CREATE TABLE borrow (
r_no NUMBER(10),
b_no NUMBER(10),
b_time DATE,
PRIMARY KEY (r_no, b_no),
CONSTRAINT borrow_reader_fk FOREIGN KEY (r_no) REFERENCES reader(r_no),
CONSTRAINT borrow_book_fk FOREIGN KEY (b_no) REFERENCES book(b_no)
);
```
以上SQL语句中,图书表的主键为b_no,读者表的主键为r_no和借阅表的联合主键为r_no和b_no。在读者表中,性别r_sex设置了约束CHECK,只允许取值为‘男’或‘女’。地址r_address设置了默认值为‘宿舍’。在借阅表中,设置了外键约束borrow_reader_fk和borrow_book_fk,分别关联到读者表的r_no字段和图书表的b_no字段。
阅读全文