mysql基本命令整理(2)-修改篇

1、在test_tb2数据库中新建两个数据表 offices 和 employees,如下:

创新互联,专注为中小企业提供官网建设、营销型网站制作、响应式网站建设、展示型网站设计、成都网站建设等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。

MySQL> DESC offices;

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

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

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

| officeCode | int(10)     | NO   | PRI | NULL    |       |

| city       | varchar(50) | NO   |     | NULL    |       |

| address    | varchar(50) | YES  |     | NULL    |       |

| country    | varchar(50) | NO   |     | NULL    |       |

| postlCode  | varchar(15) | YES  |     | NULL    |       |

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

mysql> DESC employees;

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

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

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

| employeeNumber | int(11)      | NO   | PRI | NULL    | auto_increment |

| lastName       | varchar(50)  | NO   |     | NULL    |                |

| firstName      | varchar(50)  | NO   |     | NULL    |                |

| mobile         | varchar(25)  | YES  | UNI | NULL    |                |

| officeCode     | int(10)      | NO   |     | NULL    |                |

| jobTitle       | varchar(50)  | NO   |     | NULL    |                |

| birth          | datetime     | NO   |     | NULL    |                |

| note           | varchar(255) | YES  |     | NULL    |                |

| sex            | varchar(5)   | YES  |     | NULL    |                |

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

2、修改字段的位置:

mysql> ALTER TABLE employees MODIFY mobile VARCHAR(25) after officeCode;

3、修改字段的名称:

mysql> ALTER TABLEemployees CHANGE birth employee_birth DATETIME;

4、修改字段的数据类型及非空约束

mysql> ALTER TABLE employees MODIFY sex VARCHAR(2) NOT NULL; 

5、删除字段

mysql> ALTER TABLE employees DROP note;

6、增加字段名

mysql> ALTER TABLEemployees ADDfavoriate_activity VARCHAR(100);

7、删除表

(1)mysql> DROP TABLE offices;

ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constrai

nt fails

直接删除数据表,会出现错误,因为子表employees的外键约束关联了父表offices的,要删除父表必须先要解除和子表的关系。

(2)解除父表和子表之间的关系

   mysql> ALTER TABLE employees DROP FOREIGN KEYfk_emp_off(外键名称);

(3)再次删除

mysql> DROP TABLE offices;

Query OK, 0 rows affected (0.01 sec)

(4)表删除操作是把表的定义和表中的数据一起删除,并且在执行删除操作时,不会有任何确认信息的提示,因此执行删除操作时,应当慎重再慎重。

8、总结:表的字段基本操作就是增(ADD)  删(DROP)  改:修改(MODIFY )和 改变CHANGE)

CHANGE 改变的是字段的名称 、数据类型、注释

MODIFY 不可以改变字段的名称

所以:(1)既更改列名也更改类型,用CHANGE 
           (2)只修改类型,用MODIFY


名称栏目:mysql基本命令整理(2)-修改篇
当前路径:http://ybzwz.com/article/igdcdj.html