9.Mysql 约束和事务

一、约束

1.主键约束 primary key

  • 通常针对业务去设计主键,每张表都设计一个主键id
  • 主键是给数据库和程序使用的,跟最终的客户无关,所以主键没有意义没有关系,只要能够保证不重复 就好,比如 身份证就可以作为主键.

(1)创建1

CREATE TABLE emp2(
	-- 设置主键 唯一 非空 
	eid INT PRIMARY KEY,
	ename VARCHAR(20), 
	sex CHAR(1)
);

(2)创建2

CREATE TABLE emp2(
	eid INT ,
	ename VARCHAR(20), 
	sex CHAR(1),
	-- 指定主键为 eid字段 
	PRIMARY KEY(eid)
);

(3)创建3

-- 方式3 创建一个带主键的表 
CREATE TABLE emp2(
    eid INT ,
    ename VARCHAR(20),
    sex CHAR(1)
)
-- 创建的时候不指定主键,然后通过 DDL语句进行设置 
ALTER TABLE emp2 ADD PRIMARY KEY(eid);

(4)删除主键

-- 使用DDL语句 删除表中的主键
ALTER TABLE emp2 DROP PRIMARY KEY; 
DESC emp2;

(5)主键自增

-- 创建主键自增的表 
CREATE TABLE emp2(
	-- 关键字 AUTO_INCREMENT,主键类型必须是整数类型 
	eid INT PRIMARY KEY AUTO_INCREMENT,
	ename VARCHAR(20),
	sex CHAR(1)
);

(6)删除表中数据

 

(7)非空约束

# 非空约束
CREATE TABLE emp2(
	eid INT PRIMARY KEY AUTO_INCREMENT, 
	-- 添加非空约束, ename字段不能为空 
	ename VARCHAR(20) NOT NULL,
	sex CHAR(1)
);

(8)唯一约束

#创建emp3表 为ename 字段添加唯一约束 
CREATE TABLE emp3(
    eid INT PRIMARY KEY AUTO_INCREMENT,
    ename VARCHAR(20) UNIQUE,
    sex CHAR(1)
);
  1. 主键约束 唯一且不能够为空
  2. 唯一约束,唯一 但是可以为空
  3. 一个表中只能有一个主键 , 但是可以有多个唯一约束2

2.外键约束

foreigen key    

默认值

-- 创建带有默认值的表 
CREATE TABLE emp4(
	eid INT PRIMARY KEY AUTO_INCREMENT, 
	-- 为ename 字段添加默认值
	ename VARCHAR(20) DEFAULT '奥利给', 
	sex CHAR(1)
);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值