天天看點

mysql 修改表結構操作

                                     mysql 修改表結構操作

使用 【desc 表名】檢視表結構

1、mysql > alter table passwd add id int(3) not null auto_increment primary  key not null first ;

      在字段的上面添加一個新的字段。需要關鍵字 first

mysql> desc passwd ;

+----------+-------------+------+-----+---------+-------+

| Field    | Type        | Null | Key | Default | Extra |

| username | char(30)    | NO   | MUL | NULL    |       | 

| pass     | char(1)     | NO   |     | NULL    |       | 

| uid      | int(5)      | NO   |     | NULL    |       | 

| gid      | int(5)      | NO   |     | NULL    |       | 

| common   | varchar(50) | YES  |     | NULL    |       | 

| homedir  | char(50)    | YES  |     | NULL    |       | 

| shell    | char(50)    | NO   |     | NULL    |       | 

mysql> alter table passwd add id int(3) not null auto_increment primary  key not null first ;

Query OK, 37 rows affected (0.04 sec)

Records: 37  Duplicates: 0  Warnings: 0

+----------+-------------+------+-----+---------+----------------+

| Field    | Type        | Null | Key | Default | Extra          |

| id       | int(3)      | NO   | PRI | NULL    | auto_increment | 

| username | char(30)    | NO   | MUL | NULL    |                | 

| pass     | char(1)     | NO   |     | NULL    |                | 

| uid      | int(5)      | NO   |     | NULL    |                | 

| gid      | int(5)      | NO   |     | NULL    |                | 

| common   | varchar(50) | YES  |     | NULL    |                | 

| homedir  | char(50)    | YES  |     | NULL    |                | 

| shell    | char(50)    | NO   |     | NULL    |                | 

2、在指定的位置添加一個新的字段

   在id字段後添加一個新的字段date

   mysql> alter table passwd add date year after id ;   需要用到after關鍵字 

mysql> alter table passwd add date year after id ;

Query OK, 37 rows affected (0.01 sec)

mysql> desc passwd 

    -> ;

| date     | year(4)     | YES  |     | NULL    |                | 

| pass     | char(1)     | NO   |     | NULL    |                |

3、預設添加在最後面.

mysql> alter table passwd add QQ int(16) ;

| QQ       | int(16)     | YES  |     | NULL    |                | 

10 rows in set (0.00 sec)

4、删除表結構

    mysql> alter table passwd drop date ;

mysql> alter table passwd drop date ;

Query OK, 37 rows affected (0.02 sec)

5、修改字段類型

mysql> alter table passwd modify QQ int(11) not null ;   修改passwd表的QQ字段。

mysql> alter table passwd modify QQ int(11) not null ;

Query OK, 37 rows affected, 37 warnings (0.00 sec)

Records: 37  Duplicates: 0  Warnings: 37

| QQ       | int(11)     | NO   |     | NULL    |                | 

6、修改字段名

mysql> alter table passwd change QQ qq int(11) not null ;  修改QQ字段為qq,用到change關鍵字。 需要将權限類型寫上,也可以更改類型。

mysql> alter table passwd change QQ qq int(11) not null ;

Query OK, 37 rows affected (0.00 sec)

mysql> desc passwd ;                                     

| qq       | int(11)     | NO   |     | NULL    |                | 

9 rows in set (0.00 sec)

本文轉自zhaoyun00 51CTO部落格,原文連結:http://blog.51cto.com/zhaoyun/727252

繼續閱讀