mysql修改表字段数据类型(数据库mysql基本语句)

修改字段名、字段类型、类型长度、默认值、注释

ALTER  TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型;   

alter  table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释';
-- 正确,能修改字段名、字段类型、类型长度、默认值、注释

alter  table table1 change column2 column2 varchar(100) DEFAULT 1.2 COMMENT '注释'; 
-- 正确,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释
 
alter  table table1 change column1 column2; 
-- 报错

使用change关键字,需要写2个字段

  • 修改字段类型、类型长度、默认值、注释
ALTER  TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度 新默认值 新注释; 
-- COLUMN可以省略

alter  table table1 modify column column1  decimal(10,1) DEFAULT NULL COMMENT '注释'; 
-- 正确,能修改字段类型、类型长度、默认值、注释

alter  table table1 modify column1  decimal(10,2) DEFAULT NULL COMMENT '注释'; 
-- 正确,能修改字段类型、类型长度、默认值、注释

使用modify关键字,写1个字段即可

本文转载自:https://www.gylmap.com

  • 修改表名
ALTER TABLE 旧表名 RENAME TO 新表名 ;

mysql> show tables ;
+-------------------+
| Tables_in_db_test |
+-------------------+
| white_user   |
+-------------------+
1 row in set (0.00 sec)
 
mysql> alter table white_user rename to white_user_new ;
Query OK, 0 rows affected (0.00 sec)
 
mysql> show tables ;
+-------------------+
| Tables_in_db_test |
+-------------------+
| white_user_new    |
+-------------------+
1 row in set (0.00 sec)
  • 修改表的注释
ALTER TABLE 表名 COMMENT '新注释'
 
mysql> alter table  white_user_new comment '新表-白名单表' ;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0
 
mysql> show create table white_user_new ;
 CREATE TABLE `white_user_new` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `name` varchar(50) NOT NULL COMMENT '姓名',
  `created_time` datetime DEFAULT NULL COMMENT '创建时间',
  `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'
  • 在指定位置添加新字段(如果不使用after,默认是在最后加字段)
ALTER TABLE 表名 ADD [COLUMN] 字段名 字段类型 是否可为空 COMMENT '注释' AFTER 指定某字段 ;
--COLUMN关键字可以省略不写

mysql> alter table white_user_new add column erp varchar(50) not null comment 'erp账号' after name ;
Query OK, 0 rows affected (0.03 sec)
Records: 0  Duplicates: 0  Warnings: 0
--在name字段后面添加erp字段

mysql> alter table white_user_new add position varchar(50) not null comment '岗位' after name ;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
--在name字段后面添加position字段。
 
mysql> show create table white_user_new ;                                      
CREATE TABLE `white_user_new` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `name` varchar(50) NOT NULL COMMENT '姓名',
  `position` varchar(50) NOT NULL COMMENT '岗位',
  `erp` varchar(50) NOT NULL COMMENT 'erp账号',
  `created_time` datetime DEFAULT NULL COMMENT '创建时间',
  `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
 
mysql> alter table white_user_new add  mobile varchar(50) not null comment '手机号码' before position ;
--报错,在position字段前添加mobile字段,不能使用before关键字
  • 删除字段
ALTER TABLE 表名 DROP [COLUMN] 字段名 ;
-- COLUMN关键字可以省略不写
 
mysql> alter table white_user_new drop column position ;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
-- 删除position字段
 
mysql> alter table white_user_new drop erp ;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
-- 删除erp字段

mysql> show create table white_user_new ;                                      
CREATE TABLE `white_user_new` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `name` varchar(50) NOT NULL COMMENT '姓名',
  `created_time` datetime DEFAULT NULL COMMENT '创建时间',
  `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'       
秒鲨号所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈!本站将在三个工作日内改正。
(0)

大家都在看

  • 日文怎么打(中文与日文随意切换的输入法)

    很多小伙伴在使用电脑输入法的时候不知道怎样打出日语片假名,如果不是特别用片假名标注的单词可能输入的时候就会稍微麻烦一些。下面是小编给大家分享的三个日语片假名的输入方法,大家可以作为…

    2022年4月13日
  • 二手的苹果6多少钱(二手正品苹果8x多少钱)

    iPhone 6现在已经老了,如果你不升级到iOS11,还是可以勉强用下的,当当备用机还是妥妥的。如果你升级到了iOS11,那么恭喜了,你可以换新机了。毕竟iOS11不是对iPho…

    2022年5月26日 专栏投稿
  • 成都社保多少钱(2021年成都社保缴费标准)

    【转发周知!2021年度成都市城乡居民基本养老保险缴费金额公布】都知道1月15日,@成都人社局 发布消息,2021年度城乡居民基本养老保险缴费金额已经出炉。哪些人可以参加城乡居民基…

    2022年5月20日
  • 街机模拟器中文版(android街机模拟器)

    说到街机游戏、各种经典的主机、掌机游戏想必都是大家的童年回忆,小时候放学去街机厅玩到忘记回家,没少挨打。又为了父母奖励梦寐以求的游戏机,努力考了第一名次。 虽然这些经典游戏年代已久…

    2022年3月16日 专栏投稿
  • 狗拉稀怎么办(狗狗拉稀但是精神很好)

    边牧拉稀,是不少宠主很担忧的事情。如果边牧拉稀了,但是精神状态却很好,一般问题不大,只要及时调理就可以了。那么,下面我们就来看看什么情况会导致边牧拉稀,还有该如何解决。 1. 吃得…

    2022年4月25日 专栏投稿
  • 口红排行榜(口红排行榜前十名圣罗兰)

    随着化妆越来越普及,口红也成了女人出门的必备品。 吃饭的时候,识别一个女生是否已经吃饱了,大概就是看她有没有拿出口红开始涂吧。 所以,爱好口红的你,是否知道世界十大奢华口红品牌都有…

    2022年6月4日 专栏投稿
  • 执业兽医资格考试(国内最难考的证书)

    依据《中华人民共和国动物防疫法》《执业兽医管理办法》《执业兽医资格考试管理办法》,现就2020年全国执业兽医资格考试有关事项公告如下。 一、考试类别 2020年全国执业兽医资格考试…

    2022年6月9日 专栏投稿
  • 中药有多少种(一味中药可化72种结石)

    最近门诊有好多患者来问我:“沈大夫,你看看我这个检查报告,这该怎么办?”“大夫,我得了结石,我不想做手术,喝中药可以化石吗?”“大夫,得了肾结石要紧吗?” 当你拿着自己的体检报告,…

    2022年5月23日 专栏投稿
  • 中国多少省市(全国省市区一览表)

    在祖国大陆实现统一的1951年,中国有53个省级行政区,即29个省、13个直辖市、8个行署区、1自治区(内蒙古)、1个地方(西藏)和1个地区(昌都)。这些省级行政区并不是一成不变的…

    2022年6月14日 专栏投稿
  • 绩效考核方法有哪几种(5种优秀的KPI制度是这样的)

    HR制定不同部门的绩效考核,使用的方法不同,方法用对了,制定绩效考核方案省时且实用。今天小编来和大家说说5个常用的绩效考核方法。 1.目标考核法: 什么是目标考核法,它的定义是:按…

    2022年4月28日
品牌推广 在线咨询
返回顶部