约束的概念
约束就是为某个列的数据制定出一种规范,如:指定某个列中的数据不能存在重复,
指定某个列中不能存在值为’NULL’,指定某个列中的数据只能为’xxx’等等.
值得注意的是,一条SQL语句是可以定义多个约束语句,前提是要逻辑通顺.且约束语句不分先后.
如:
CREATE TALBE 自定义表名(
列名 数据类型 NOT NULL UNIQUE,
);
关于主键约束.主键约束具有非空和唯一的特性*
一个表中只能有一个主键(除非是联合主键)
一.非空约束: NOT NULL
意义:禁止列中的数据出现空’NULL’值
方式一:创建表时定义非空约束
格式:
CREATE TALBE 自定义表名(
列名 数据类型 NOT NULL,
);
列如:
CREATE TABLE yueshu(
id INT,
name VARCHAR(20) NOT NULL,
phone VARCHAR(40)
);
//给’name’列定义非空约束.
方式二:创建表后定义非空约束
格式:ALTER TABLE 表名 MODIFY 列名 数据类型 NOT NULL;
列如:ALTER TABLE yueshu MODIFY id INT NOT NULL;//给已存在的列’id’定义为非空约束.
取消列的非空约束
格式:ALTER TABLE 表名 MODIFY 列名 数据类型;
列如:ALTER TABLE yueshu MODIFY NAME VARCHAR(40);
二.唯一约束: UNIQUE
意义:禁止列中的数据出现重复
方式一: 创建表时定义唯一约束
格式:
CREATE TABLE 自定义表名(
列名 数据类型 UNIQUE,
);
列如:
CREATE TABLE yueshu2(
id INT UNIQUE,
NAME VARCHAR(20),
phone VARCHAR(40) UNIQUE
);
//给’id’列