数据表的修改

添加或删除列

添加列:
命令格式:ALTER TABLE TABLE_NAME ADD [COLUMN] COL_NAME COLUMN_DEFINITION [FIRST | AFTER COL_NAME]。

举个例子:
首先随意创建一个数据表

CREATE TABLE TEST(
ID SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT
);

这里写图片描述

先在我们在该表中插入一列,参照上面的格式,命令如下:
ALTER TABLE TEST ADD NAME VARCHAR(10) NOT NULL;
上面的命令格式中,方括号中的内容可以省略,表示执行某些默认的操作,第二个方括号中的FIRST 和 AFTER COL_NAME表示插入在首列,或插入在某列的后面,如果不写的话,默认插入在最后面。

插入成功后查看一下结果:

这里写图片描述

这时NAME列已经插入到了末尾。

插入多列时,命令与上述格式相似,但是不能指定插入的具体位置。格式如下:
ALTER TABLE TABLE_NAME ADD [COLUMN] (COL_NAME COLUMN_DEFINITION,…);
这里不做演示。

删除列:
命令格式:
ALTER TABLE TABLE_NAME DROP [COLUMN] COL_NAME;
删除命令相对简单,不需要那么多附加属性, 直接加入你要删除的那一列的列名就可以。

删除多列时,命令如下:
ALTER TABLE TABLE_NAME DROP [COLUMN] COL_NAME, DROP [COLUMN] COL_NAME …;
想要删除多少个,就加多少个DROP以及列名就可以了。

比如我把上表中的ID列删了,输入命令ALTER TABLE TEST DROP ID;

这里写图片描述

添加约束:

添加主键约束:
命令格式:
ALTER TABLE TABLE_NAME ADD [CONSTRAINT [SYMBOL]] PRIMAYR KEY [INDEX_TYPE] (INDEX_COL_NAME,…);
首先创建一个新表,如下。
这里写图片描述

先在通过上述命令为ID添加主键约束。
命令如下:ALTER TABLE USER ADD CONSTRAINT PK_ID PRIMARY KEY (ID);
其中CONSTRAINT PK_ID表示为该主键约束添加一个新的称呼,称呼为PK_ID,可以根据喜好自定义。
更爱成功后查看属性。
这里写图片描述

添加唯一约束:ALTER TABLE TABLE_NAME ADD [CONSTRAINT [SYMBOL]] UNIQUE [INDEX|KEY] [INDEX_NAME] [INDEX_TYPE] (INDEX_COL_NAEM,…);
例如为上表中的PID添加唯一约束
这里写图片描述

添加外键约束:ALTER TABLE TABLE_NAME ADD [CONSTRAINT [SYMBOL]] FORIGEN KEY [INDEX_NAME] (INDEX_COL_NAME,…) REFERENCE_DEFINITION;
例如将USER表的PID与TEST表的ID建立外键约束,注意两者的变量类型必须一致。
这里写图片描述

这里写图片描述

添加默认约束:ALTER TABLE TABLE_NAME ALTER [COLUMN] COL_NAME (SET DEFAULT VAR | DROP DEFAULT);
例如为TEST表中的MATH添加DEFAULT约束,将SET DEFAULT 改为DROP DEFAULT 即可移除默认约束列。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值