mysql如何增加列
這篇文章主要講解了“mysql如何增加列”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“mysql如何增加列”吧!
在mysql中,可以使用“ALTER TABLE”語(yǔ)句和ADD關(guān)鍵字來(lái)增加列(字段),語(yǔ)法為“ALTER TABLE 表名 ADD 新字段名 數(shù)據(jù)類(lèi)型[約束條件];”;這種語(yǔ)法格式會(huì)在數(shù)據(jù)表的末尾添加列(字段)。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
MySQL 數(shù)據(jù)表是由行和列構(gòu)成的,通常把表的“列”稱(chēng)為字段(Field),把表的“行”稱(chēng)為記錄(Record)。隨著業(yè)務(wù)的變化,可能需要在已有的表中添加新的字段。
在mysql中,可以使用“ALTER TABLE”語(yǔ)句和ADD關(guān)鍵字來(lái)增加列(字段)。
語(yǔ)法:
ALTERTABLE表名ADD新字段名數(shù)據(jù)類(lèi)型[約束條件];
對(duì)語(yǔ)法格式的說(shuō)明如下:
-
表名:為數(shù)據(jù)表的名字; -
新字段名:為所要添加的字段的名字; -
數(shù)據(jù)類(lèi)型:為所要添加的字段能存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)類(lèi)型; -
[約束條件]:是可選的,用來(lái)對(duì)添加的字段進(jìn)行約束。
這種語(yǔ)法格式默認(rèn)在表的最后位置(最后一列的后面)添加新字段。
示例:
我們有一個(gè)student 數(shù)據(jù)表,使用 DESC 查看 student 表結(jié)構(gòu)
mysql>DESCstudent; +-------+-------------+------+-----+---------+-------+ |Field|Type|Null|Key|Default|Extra| +-------+-------------+------+-----+---------+-------+ |id|int(4)|YES||NULL|| |name|varchar(20)|YES||NULL|| |sex|char(1)|YES||NULL|| +-------+-------------+------+-----+---------+-------+ 3rowsinset(0.01sec)
使用 ALTER TABLE 語(yǔ)句添加一個(gè) INT 類(lèi)型的字段 age,在看看 student 表結(jié)構(gòu)
mysql>ALTERTABLEstudentADDageINT(4); QueryOK,0rowsaffected(0.16sec) Records:0Duplicates:0Warnings:0 mysql>DESCstudent; +-------+-------------+------+-----+---------+-------+ |Field|Type|Null|Key|Default|Extra| +-------+-------------+------+-----+---------+-------+ |id|int(4)|YES||NULL|| |name|varchar(20)|YES||NULL|| |sex|char(1)|YES||NULL|| |age|int(4)|YES||NULL|| +-------+-------------+------+-----+---------+-------+ 4rowsinset(0.00sec)
可以看出student 表已經(jīng)添加了 age 字段,且該字段在表的最后一個(gè)位置,添加字段成功。
那么如果想要在開(kāi)頭或者中間添加字段,需要怎么做?
-
如果希望在開(kāi)頭位置(第一列的前面)添加新字段,那么需要借助
FIRST關(guān)鍵字 -
如果希望在中間位置添加新字段,那么需要借助
AFTER關(guān)鍵字
語(yǔ)法格式如下:
ALTERTABLE表名ADD新字段名數(shù)據(jù)類(lèi)型[約束條件]FIRST; ALTERTABLE表名ADD新字段名數(shù)據(jù)類(lèi)型[約束條件]AFTER<已經(jīng)存在的字段名>;
示例:
mysql>ALTERTABLEstudentADDstuIdINT(4)FIRST; QueryOK,0rowsaffected(0.14sec) Records:0Duplicates:0Warnings:0 mysql>DESCstudent; +-------+-------------+------+-----+---------+-------+ |Field|Type|Null|Key|Default|Extra| +-------+-------------+------+-----+---------+-------+ |stuId|int(4)|YES||NULL|| |id|int(4)|YES||NULL|| |name|varchar(20)|YES||NULL|| |sex|char(1)|YES||NULL|| |age|int(4)|YES||NULL|| +-------+-------------+------+-----+---------+-------+ 5rowsinset(0.00sec)
student 表中添加了一個(gè) stuId 字段,且該字段在表中的第一個(gè)位置
mysql>ALTERTABLEstudentADDstunoINT(11)AFTERname; QueryOK,0rowsaffected(0.13sec) Records:0Duplicates:0Warnings:0 mysql>DESCstudent; +-------+-------------+------+-----+---------+-------+ |Field|Type|Null|Key|Default|Extra| +-------+-------------+------+-----+---------+-------+ |stuId|int(4)|YES||NULL|| |id|int(4)|YES||NULL|| |name|varchar(20)|YES||NULL|| |stuno|int(11)|YES||NULL|| |sex|char(1)|YES||NULL|| |age|int(4)|YES||NULL|| +-------+-------------+------+-----+---------+-------+ 6rowsinset(0.00sec)
student 表中添加了一個(gè) stuId 字段,且該字段在 name 字段后面的位置
總結(jié)
以上是生活随笔為你收集整理的mysql如何增加列的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 淘宝技术沙龙「系统稳定性与性能」的笔记与
- 下一篇: 附件上传测试用例