实验三 数据库完整性技术

实验三 数据库完整性技术

【实验目的】

1、掌握完整性的概念;

2、熟悉MySQL的完整性技术。

3、了解MySQL的违反完整性处理措施。

【实验性质】 验证性实验

【实验学时】2H

【实验内容】

写出完整、详尽的SQL语句,根据实验记录结果并总结。(空位不够请自行续页)

一、定义完整性。(5分)

/*创建表s、p、j、spj*/

定义s表; sno主码,sname非空、city缺省值

定义p表; pno主码,pname非空、color只能取红、蓝、绿

定义j表; jno主码, jname非空

定义spj表; (sno,pno,jno)主码,参照sno、pno、jno外码

create table s(

sno        char(2) PRIMARY KEY,

sname      varchar(6) NOT NULL,

status     int,

city       varchar(6) DEFAULT '天津'

);



create table p(

pno      char(2) PRIMARY KEY,

pname    varchar(6) NOT NULL,

color    enum('红','蓝','绿'),

weight   int

);



create table j(

jno        char(2) PRIMARY KEY,

jname      varchar(8) NOT NULL,

city       varchar(6)

);



create table spj(

sno    char(2),

pno    char(2),

jno    char(2),

qty    int,

PRIMARY KEY (sno,pno,jno),

CONSTRAINT fk_spj_sno FOREIGN KEY (sno) REFERENCES s(sno),

CONSTRAINT fk_spj_pno FOREIGN KEY (pno) REFERENCES p(pno),

CONSTRAINT fk_spj_jno FOREIGN KEY (jno) REFERENCES j(jno)

);

二、插入合乎约束的数据。(5分)

in

你可能感兴趣的:(数据库,database)