在網(wǎng)站重構(gòu)中,通常會進行數(shù)據(jù)結(jié)構(gòu)的修改,所以添加,刪除,增加mysql表的字段是難免的,有時為了方便,還會增加修改表或字段的注釋,把同字段屬性調(diào)整到一塊兒。這些操作可以在phpmyadmin或者別的mysql管理工具中完成,但是我們有時為了更方便的管理,會選擇寫sql語句來實現(xiàn)。
1.修改字段的長度
語法:
(資料圖片)
ALTER TABLE 表名 MODIFY COLUMN 字段名 數(shù)據(jù)類型(修改后的長度)
例子:
將字段的長度由10改為20
ALTER TABLE attence MODIFY COLUMN id INT(20)
2.修改字段的名稱
語法:
alter table <表名> change <字段名> <字段新名稱> <字段的類型>。
例子:
將字段attence_name改為name
ALTER TABLE attence CHANGE attence_name NAME VARCHAR(20)
3.新增字段
語法:
新增默認為空的字段ALTER TABLE 表名 ADD COLUMN 字段名 字段類型 DEFAULT NULL;新增不為空的字段ALTER TABLE 表名ADD COLUMN 字段名 字段類型 NOT NULL;
例子:ALTER TABLE attence ADD COLUMN attence_name VARCHAR(20) DEFAULT NULL;ALTER TABLE attence ADD COLUMN age VARCHAR(20) NOT NULL;
4.刪除字段
語法:
ALTER TABLE 表名 DROP COLUMN 字段名;
例子:
ALTER TABLE attence DROP COLUMN age;
5.批量增加字段
方法一可以使用事務(wù)
語法:
begin; //事務(wù)開始alter table 表名 add 字段名 字段類型(長度);alter table 表名add 字段名 字段類型(長度);alter table 表名add 字段名 字段類型(長度);alter table 表名add 字段名 字段類型(長度);commit;
例子:
begin; //事務(wù)開始alter table em_day_data add f_day_house7 int(11);alter table em_day_data add f_day_house8 int(11);alter table em_day_data add f_day_house9 int(11);alter table em_day_data add f_day_house10 int(11);commit;
方法二
alter table 表名 add (字段1 類型(長度),字段2 類型(長度),字段3 類型(長度));
alter table em_day_data add (f_day_house11 int(11),f_day_house12 int(11),f_day_house13 int(11));
6.批量修改字段名稱
語法:
alter table 表 change 修改前字段名 修改后字段名稱 int(11) not null,change 修改前字段名 修改后字段名稱 int(11) not null,change 修改前字段名 修改后字段名稱 int(11) not null,change 修改前字段名 修改后字段名稱 int(11) not null,change 修改前字段名 修改后字段名稱 int(11) not null
例子:
alter table em_day_data change f_day_house11 f_day_hour11 int(11) not null,change f_day_house12 f_day_hour12 int(11) not null,change f_day_house13 f_day_hour13 int(11) not null,change f_day_house14 f_day_hour14 int(11) not null,change f_day_house15 f_day_hour15 int(11) not null,change f_day_house16 f_day_hour16 int(11) not null,change f_day_house17 f_day_hour17 int(11) not null
來源:mysql中利用sql語句修改字段名稱,字段長度等操作 - 努力奮斗吧 - 博客園
關(guān)鍵詞:
版權(quán)與免責(zé)聲明:
1 本網(wǎng)注明“來源:×××”(非商業(yè)周刊網(wǎng))的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責(zé),本網(wǎng)不承擔此類稿件侵權(quán)行為的連帶責(zé)任。
2 在本網(wǎng)的新聞頁面或BBS上進行跟帖或發(fā)表言論者,文責(zé)自負。
3 相關(guān)信息并未經(jīng)過本網(wǎng)站證實,不對您構(gòu)成任何投資建議,據(jù)此操作,風(fēng)險自擔。
4 如涉及作品內(nèi)容、版權(quán)等其它問題,請在30日內(nèi)同本網(wǎng)聯(lián)系。