1,什么是约束:
对表数据的限定,保证数据的正确性,有效性,完整性;
注意:MySQL不支持 检测约束 !!!
2,什么时候创建约束:
在建表的时候!!!
因为当表中已有数据的话,约束的创建会创建失败;
//建表时的创建约束:s
create table 表名(
字段名 数据类型 约束
);
3,约束的使用:
1 *,主键约束:
1. 作用:用来区分表的数据;
1. 特点:主键必须是唯一不重复的值;且不能包含null值;(除非设置为自动增长)
//way 1:
create table 表名(
字段名 字段类型 primary key
);
//wat 2:
create table 表名(
列名 数据类型,
[ constraint 约束名 ] primary key(列名)
);
//其中约束名 :按标准来是以 FK_ 开头;
删除主键约束:
alter table 表名 drop primary key;
向已有的表中添加主键约束:
alter table 表名 add primary key(字段名);
c,!!!主键的自增:auto_increment
如:在id字段中,每增加一条数据 id 就会+1,1 -> 2; ```sql 字段名 字段类型 primary key auto_increment,
//修改自动增长的开始值: alter table 表名 auto)increment = 1000;

<a name="GoFTq"></a>
### 2,唯一约束: unique

<a name="WogjD"></a>
### 3,非空约束: not null

<a name="A6Z0D"></a>
### 4,默认值约束: default

<a name="w6zsv"></a>
### 5 *,外键约束:poreign key
```sql
create table 表名(
字段名 字段类型/数据类型,
...,
[CONSTRAINT 外键约束名] FOREIGN KEY(外键字段名) REFERENCES 主表(主键字段名)
);
例:
一对多:一是主表,多是从表;
使用外键的前提:主表中必须存在主键 (primary key);