主键
-
主键的特点:
·非空
·唯一
·被引用–外键 -
操作主键的四种种方法:
1)创建表时指定主键:CREATE TABLE 表名( 列名 类型 PRIMARY KEY );
2)在后面添加:
CREATE TABLE 表名( 列名 类型, PRIMARY KEY(列名) );
3)在表创建后添加主键:
ALTER TABLE 表名 ADD PRIMARY KEY(列名);
4)删除主键:
ALTER TABLE 表名 DROP PRIMARY KEY;
-
主键自增长–因为主键的唯一性,通常设置主键为整型,然后设置其自动增长,这样可以保证主键在插入数据的时候的唯一性和非空性:
1)创建主键自增长:CREATE TABLE 表名( 列名 类型 PRIMARY KEY AUTO_INCREMENT, );
2)修改表时设置主键增长:
ALTER TABLE 表名 CHANGE 列名 INT AUTO_INCREMENT;
//这样吧这个列该成整型,然后自增长。
3)删除自增长:
ALTER TABLE 表名 CHANGE 列名 INT;
//即重新设置列的属性。
主键即使设置了自增长,也可以自己设置。 -
非空特性–不是说主键而是NOT NULL:
1)设置非空特性:CREATE TABLE 表名( 列名 类型 NOT NULL );
-
唯一特性–不一定非空
1)设置唯一特性:CREATE TABLE 表名( 列名 类型 NOT NULL UNIQUE );
外键
外键特点:
- 外键必须是另一个表的主键的值(即外键要引用主键)
- 外键可以重复
- 外键可以为空
- 一张表可以有多个外键
- 当外键就是本表的主键的时候这个外键就是唯一的了,表示一对一关系。
如何指定外键:
-
创建表时:
CREATE TABLE 表名( 列名 属性, CONSTRAINT 别名 FOREIGN KEY(列名) REFERENCES 另一个表名(主键列名) );
-
修改表时:
ALTER TABLE 表名 ADD CONSTRAINT 别名 FOREIGN KEY(列名) REFERENCES 另一个表名(主键列名)
外键作用:
可以为设置外键的这个表添加约束,即如外键的特点所述,这个外键的值必须是它引用的主键的中的一个值,但是可以为空,可以重复。