在表格被建立在资料库中后,我们常常会发现,这个表格的结构需要有所改变。常见的改变如下:

加一个栏位

删去一个栏位

改变栏位名称

改变栏位的资料种类

以上列出的改变并不是所有可能的改变。ALTER TABLE 也可以被用来作其他的改变,例如改变主键定义。

ALTER TABLE 的语法如下:

ALTER TABLE "table_name"

[改变方式];

[改变方式] 的详细写法会依我们想要达到的目标而有所不同。再以上列出的改变中,[改变方式] 如下:

加一个栏位: ADD "栏位 1" "栏位 1 资料种类"

删去一个栏位: DROP "栏位 1"

改变栏位名称: CHANGE "原本栏位名" "新栏位名" "新栏位名资料种类"

改变栏位的资料种类: MODIFY "栏位 1" "新资料种类"

以下我们用在 Customer 表格来当作例子:

Customer 表格

栏位名称

资料种类

First_Name

char(50)

Last_Name

char(50)

Address

char(50)

City

char(50)

Country

char(25)

Birth_Date

datetime

第一,我们要加入一个叫做 "Gender" 的栏位。这可以用以下的指令达成:

ALTER TABLE Customer ADD Gender char(1);

这个指令执行后的表格架构是:

Customer 表格

栏位名称

资料种类

First_Name

char(50)

Last_Name

char(50)

Address

char(50)

City

char(50)

Country

char(25)

Birth_Date

datetime

Gender

char(1)

接下来,我们要把 "Address" 栏位改名为 "Addr"。这可以用以下的指令达成:

ALTER TABLE Customer CHANGE Address Addr char(50);

这个指令执行后的表格架构是:

Customer 表格

栏位名称

资料种类

First_Name

char(50)

Last_Name

char(50)

Addr

char(50)

City

char(50)

Country

char(25)

Birth_Date

datetime

Gender

char(1)

再来,我们要将 "Addr" 栏位的资料种类改为 char(30)。这可以用以下的指令达成:

ALTER TABLE Customer MODIFY Addr char(30);

这个指令执行后的表格架构是:

Customer 表格

栏位名称

资料种类

First_Name

char(50)

Last_Name

char(50)

Addr

char(30)

City

char(50)

Country

char(25)

Birth_Date

datetime

Gender

char(1)

最后,我们要删除 "Gender" 栏位。这可以用以下的指令达成:

ALTER TABLE Customer DROP Gender;

这个指令执行后的表格架构是:

Customer 表格

栏位名称

资料种类

First_Name

char(50)

Last_Name

char(50)

Addr

char(30)

City

char(50)

Country

char(25)

Birth_Date

datetime

mysql alter table_mysql ALTER TABLE 的用法相关推荐

  1. mysql alter table_mysql alter table 修改表命令详细介绍

    MySQL ALTER语法如下: ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...] alter_specification: AD ...

  2. mysql rename table_Mysql: RENAME TABLE IF EXISTS

    可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: This DROP TABLE IF EXISTS works, too bad that R ...

  3. mysql open table_MySQL open table

    背景: MySQL经常会遇到Too many open files,MySQL上的open_files_limit和OS层面上设置的open file limit有什么关系? 源码中也会看到不同的数据 ...

  4. mysql check table_mysql check table

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  5. mysql存储过程 alter_MYSQL alter procedure alter function 它们只可以更改过程的特性,不可以更改过程的逻辑。...

    例子: delimiter // create procedure proc_a(in numberA int) 这样create procedure 是正确的 begin select number ...

  6. 【转贴】mysql导入数据load data infile用法

    mysql导入数据load data infile用法 基本语法: load data [low_priority] [local] infile 'file_name txt' [replace | ...

  7. 架构师技能6:深入MySQL原理-Waiting for table metadata lock引发系统崩溃

    开篇语录:以架构师的能力标准去分析每个问题,过后由表及里分析问题的本质,复盘总结经验,并把总结内容记录下来.当你解决各种各样的问题,也就积累了丰富的解决问题的经验,解决问题的能力也将自然得到极大的提升 ...

  8. mysql grant 通配符_mysql的grant用法(转)

    MySQL的权限系统围绕着两个概念: 认证->确定用户是否允许连接数据库服务器 授权->确定用户是否拥有足够的权限执行查询请求等. 如果认证不成功的话,哪么授权肯定是无法进行的. revo ...

  9. 快速掌握mysql,可备用查找相关用法(吐血整理)

    MySQL使用指南 1.mysql创建数据库以及相关操作 1 2. mysql常用数据类型 1 3. mysql数据表操作 2 3.1创建表与删除表 2 3.2添加主键 2 3.3添加外键 3 3.4 ...

最新文章

  1. mac python3.8怎样安装scrapy_Python爬虫与mac下Scrapy配置
  2. Codeforces Round #331 (Div. 2) A. Wilbur and Swimming Pool 水题
  3. Win11更新22000.71:优化任务栏、右键菜单视觉风格
  4. 【KMP】KMP 字符串匹配算法
  5. 好用的局域网共享工具
  6. 资源池以及资源池化是什么意思?
  7. iOS10 更新后问题,获取相册,录音时候闪退问题
  8. SCI检索号识别一法:UT-WOS与UT-ISI
  9. java sorted 方法_多个.sorted(…)调用java 8流
  10. 电子信息要学c语言嘛,电子信息工程专业主要学什么 一般工资是多少
  11. [数据分析笔记] 网易云歌单分析系列02—pyecharts柱状图
  12. idea 新手创建Spring项目
  13. 三岁小屁孩眼中的中国房价
  14. python 数字+.的含义
  15. 33 《对权威的服从:一次逼近人性真相的心理学实验》 -豆瓣评分9.0
  16. Arduino 按键传感器检测实验带原理图说明
  17. php入门教程ppt,PHP与MySQL入门学习指南.ppt
  18. 豆瓣电影Top250爬虫
  19. 触动心灵的十句诗,不看悔死你
  20. python中row的使用_关于Python中openpyxl使用iter_rows()的方法

热门文章

  1. c语言回文数递归,c语言问题~~~回文数!!急,拜托高人指点!!
  2. 视频光端机使用、保养与维护方法详解
  3. 网络监控系统中如何选择工业交换机?
  4. 光纤连接器百科小知识
  5. 【渝粤教育】国家开放大学2018年春季 7218-21T医学伦理学(本) 参考试题
  6. 【渝粤题库】陕西师范大学202881 电子商务概论
  7. 【渝粤题库】陕西师范大学201691 日语(二) 作业
  8. 【渝粤题库】广东开放大学 大学英语B 形成性考核
  9. linux 下 storm环境搭建,Storm在Ubuntu环境下的单机部署
  10. java ee13_一口气了解多线程及其Java实现