SQL:
全称:Structured query Language简称SQL,中文名"结构化查询语言"。
数据库用于记录数据,使用数据库记录数据可以表现出各种数据间的联系,也可以很方便的对所记录的数据进行增、删、改等操作
约束
在MySQL中,通常有这几种约束:
约束类型: 关键字:
主键 PRIMARY KEY
默认值 DEFAULT
唯一 UNIQUE
外键 FOREIGN KEY
非空 NOT NULL
功能介绍
主键(PRIMARY KEY)是用于约束表中的一行,作为这一行的唯一标识符,在一张表中通过主键就能精确定位到一行,因此主键十分重要,主键不能有重复记录且不能为空。
-------------------------------
默认值(DEFAULT)约束规定,当有DEFAULT约束的列,插入数据为空时,将使用默认值。
例:
people_num int(10) DEFAULT'10'#默认值为10
----------------
唯一约束(UNIQUE),它规定一张表中指定的一列的值必须不能有重复值,即这一列每个值都是唯一的。
外键:比如,现在有用户表和文章表,给文章表中添加一个指向用户 id 的外键,表示这篇文章所属的用户 id,外键将确保这个外键指向的记录是存在的,如果你尝试删除一个用户,而这个用户还有文章存在于数据库中,那么操作将无法完成并报错。因为你删除了该用户过后,他发布的文章都没有所属用户了,而这样的情况是不被允许的。同理,你在创建一篇文章的时候也不能为它指定一个不存在的用户 id。
一个表可以有多个外键,每个外键必须 REFERENCES (参考) 另一个表的主键,被外键约束的列,取值必须在它参考的列中有对应值。
在 INSERT 时,如果被外键约束的值没有在参考列中有对应,比如以下命令,参考列 (department 表的 dpt_name) 中没有 dpt3,则 INSERT 失败:
INSERT INTO employee VALUES(02,'Jack',30,3500,114114,'dpt3');
可见之后将 dpt3 改为 dpt2(department 表中有 dpt2),则插入成功: