MySql数据库入门讲解(二)

2014-11-24 16:58:33 · 作者: · 浏览: 1
据控制语言
适用对象:相关的dba操作 如grant等操作
五、数据库约束
1. 主外键约束 主键约束primary key 外键 foreign key
业务主键 与业务相关 、 逻辑主键 与业务无关。 推荐有逻辑主键。
2. 主键自动自增 MySql 主键要求int且用auto_increment自增。
3. 定义唯一约束 unique
4. 定义非空约束 not null
六、表与表之间的关系
1. 一对多
CREATE TABLE department(
id int PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) UNIQUE NOT NULL
);
CREATE TABLE employee(
id int PRIMARY KEY AUTO_INCREMENT,name VARCHAR(100) NOT NULL,
salary FLOAT(8,2),dept_id int,
CONSTRAINT dept_id_fk FOREIGN KEY(dept_id) REFERENCES department(id)
);
2. 多对多关系
CREATE TABLE teacher(
id int PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL,
salary FLOAT(8,2)
);
CREATE TABLE students(
id int PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL,
grade VARCHAR(10)
);
CREATE TABLE teacher_student(
t_id int, s_id int, PRIMARY KEY(t_id,s_id),
CONSTRAINT t_id_fk FOREIGN KEY(t_id) REFERENCES teacher(id),
CONSTRAINT s_id_fk FOREIGN KEY(s_id) REFERENCES students(id)
);
www.2cto.com
3. 一对一关系
CREATE TABLE book(
id int PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL,
price FLOAT(8,2)
);
CREATE TABLE cartitem(
id int PRIMARY KEY , num int, price FLOAT(8,2),
CONSTRAINT b_id_fk FOREIGN KEY(id) REFERENCES book(id)
);