二级MySQL(五)——完整性约束练习

在MYSQL中,通常用来指定一个已有数据库作为当前数据库的语句是【USE】

下列选项中不是MYSQL中常用数据类型的是【VAR】

在MYSQL中,常用【NULL】表示一个字段没有值或缺值

在CREATE TABLE语句中,通常使用【PRIMARY KEY】关键字来指定主键

mysql支持关系模型中【实体完整性】、【参照完整性】和【用户定义的完整性】三种不同的完整性约束

二级MySQL(五)——完整性约束练习_第1张图片

 一个数据库,包含三张表,分别设置对应的内容

 

CREATE DATABASE db_sp

DEFAULT CHARACTER SET GB2312

DEFAULT COLLATE GB2312_chinese_ci 

二级MySQL(五)——完整性约束练习_第2张图片

USE db_sp 

CREATE TABLE S

(SNO CHAR(5),

SNAME VARCHAR(20) NOT NULL UNIQUE,

STATUS SMALLINT,

CITY VARCHAR(20),

CONSTRAINT PK_S Primary key(SNO)

CONSTRAINT CK_S CHECK(CITY!='London' OR STATUS = 20

)ENGINE=InnoDB;

CREATE TABLE P

(PNO CHAR(5),

PNAME VARCHAR(15) NOT NULL,

COLOR VARCHAR(10) CHECK(COLOR IN('Red','Yellow','Green','Blue')),

WEIGHT INT,

CONSTRAINT PK_P Primary key(PNO)

)ENGINE=InnoDB;

CREATE TABLE SP

(SNO CHAR(5),

PNO CHAR(5),

QTY INT,

CONSTRAINT PK_SP Primary key(SNO,PNO),

CONSTRAINT FK_SP1 FOREIGN KEY(SNO) REFERENCES S(SNO),

CONSTRAINT FK_SP2 FOREIGN KEY(PNO) REFERENCES P(PNO)

)ENGINE=InnoDB;

 二级MySQL(五)——完整性约束练习_第3张图片

1、AUTO_INCREMENT:自增属性,记录一个唯一而又容易确定的ID号

默认值DEFAULT:不输入时默认的值

NULL:空值

2、实体完整性指的是关系的主属性不能取空值。有多个列组成的主键被称为复合主键。

3、主键约束和候选键约束

你可能感兴趣的:(#,计算机等级,mysql,数据库)