1. 程式人生 > >MySql表結構修改詳解

MySql表結構修改詳解

參數 詳解 增加 not des reat fault sign charset


修改表的語法
=========================
增加列[add 列名]
=========================
①alter table 表名 add 列名 列類型 列參數【加的列在表的最後面】
例:alter table test add username char(20) not null default ‘‘;
alter table test add birth date not null default ‘0000-00-00‘;

②alter table 表名 add 列名 列類型 列參數 after 某列【把新列加在某列後面】
例:alter table test add gender char(1) not null default ‘‘ after username;

③alter table 表名 add 列名 列類型 列參數 first【把新列加在最前面】
例:alter table test add pid int not null default 0 first;

=========================


刪除列[drop 列名]
=========================
①alter table 表名 drop 列名
例:alter table test drop pid;

=========================
修改列[modife 列名]
=========================
①alter table 表名 modify 列名 新類型 新參數【修改列類型】
例:alter table test modify gender char(4) not null default ‘‘;
②alter table 表名 change 舊列名 新列名 新類型 新參數【修改列名和列類型】
例:alter table test change pid uid int unsigned not null default 0;

=========================

查詢列
=========================
①desc 表名【查詢所有列】
例: desc test;
mysql> desc department;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| dId | int(11) | NO | PRI | | |
| dName | varchar(32) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+

②show columns from 表名【效果和desc一樣】
mysql> show columns from department;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| dId | int(11) | NO | PRI | | |
| dName | varchar(32) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+

③show create table 表名【查看表的創建代碼】

mysql> show create table department;
CREATE TABLE `department` (
`dId` int(11) NOT NULL,
`dName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`dId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

MySql表結構修改詳解