天天看点

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

继续阅读