MySQL数据库基本语法(三)

xiaoxiao2021-02-28  28

约束:

按功能划分:NOT NULL(非空约束),PRIMARY KEY(主键约束),UNIQUE KEY(唯一约束),DEFAULT(默认约束),    FOREIGN KEY (外键约束)。

按数据列数目划为:表级约束和列级约束

列级约束:对于一个数据列建立的约束,称为列级约束;

表级约束:对于多个数据列建立的约束,称为表级约束;

列级约束既可以在列定义时声明,也可以在列定义之后声明,而表级约束只能在列定义之后声明。

修改数据表:

添加单列:

ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST|AFTER col_name];

FIRST表示将新添加的数据列放在最前面,AFTER表示将添加的数据列放在指定的列后面。如果省略了FIRST和AFTER,新添加的数据列将位于所有列的下面。

添加多列:

ALTER TABLE tbl_name ADD[COLUMN] (col_name1 col_definition,...);

添加单列的时候,不需要加小括号,添加多列是必须添加小括号,且添加多列是不能指定位置。

删除列:

ALTER TABLE tbl_name DROP [COLUMN] col_name;

删除多列:

ALTER TABLE tbl_name DROP [COLUMN] col_name1,DORP [COLUMN] col_name2...;

可以同时删除和添加列,用逗号隔开。

添加主键约束:

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]]PRIMARY KEY [index_type](index_col_name,...);

添加唯一约束:

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...);

添加外键约束:

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) reference definition;

添加/删除默认约束:

ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULT literal|DROP DEFAULT};

删除主键约束:(一张表只有一个主键约束,所以不需要加名字)

ALTER TABLE tb_name DROP PRIMARY KEY;

删除唯一约束:(一张表可以有多个唯一约束,所以必须添加名字)

ALTER TABLE tbl_name DROP {INDEX|KEY} index_name;

删除外键约束:

ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol;

修改列定义:

ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST|AFTER col_name];

修改列名称:

ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST|AFTER col_name];

数据表更名:

方法1:

ALTER TABLE tbl_name RENAME [TO|AS] new_tbl_name;

方法2:

RENAME TABLE tbl_name TO new_tbl_name [,tbl_name2 TO new_tbl_name2]...;

转载请注明原文地址: https://www.6miu.com/read-2621395.html

最新回复(0)