mysql 基本命令整理(2)-修改篇
admin
2023-05-17 09:42:35
0

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 TABLE employees 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 TABLE employees ADD favoriate_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 KEY fk_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

相关内容

热门资讯

摆拍盲道被撞,反对“愤怒诱饵”... □李琛5月16日,据北京警方通报:刘某(男,26岁)和江某某(女,24岁)为吸粉引流、博取关注、牟取...
原创 这... 此次美高层行程中,随行团队中两位华裔面孔格外引人注目。一位是AI领域的重量级人物黄仁勋,自带科技光环...
联合国教科文组织总干事阿纳尼一... 5月14日下午,联合国教科文组织总干事阿纳尼一行到访张江人工智能创新小镇AI应用商店。 上海于20...
小米Air手机曾接近量产 上市... 快科技5月16日消息,卢伟冰在今晚直播聊手机产品规划时,透露一个重磅内幕,小米其实早就规划过对标苹果...
《十诫》《蓝白红》编剧皮耶谢维... 澎湃新闻记者 程晓筠据多家波兰媒体报道,该国知名编剧克日什托夫·皮耶谢维奇(Krzysztof Pi...
记者卧底“濮阳到桂林六日游”低... 极目新闻记者 郭奕今年3月,极目新闻记者卧底从河南濮阳市出发的199元桂林六日游旅行团发现,参团人员...
惊人策划透出,“下一个是古巴”... 古巴局势正面临严重升级。据三位知情人士周五向美联社透露,美国司法部正准备对现年94岁的古巴前领导人劳...
人间烟火暖 家和岁月安——记2... 新华社北京5月15日电 题:人间烟火暖 家和岁月安——记2026年“最美家庭”新华社记者董博婷家是最...
公交侧翻致2名学生去世,知情人... 极目新闻记者 柳琛琛5月16日晚,左权县安委办通报,16日7时17分,左权县石暴村附近发生一起公交车...
瞭望·治国理政纪事|进一步夯实... ◇2025年5月,习近平总书记在河南考察时指出,河南作为经济大省,要进一步夯实实体经济这个根基,以科...