Mysql修改字段名、修改字段类型

Mysql修改字段名、修改字段类型mysql修改字段类型: –能修改字段类型、类型长度、默认值、注释–对某字段进行修改ALTERTABLE表名MODIFYCOLUMN字段名新数据类型新类型长度新默认值新注释;–COLUMN可以省略altertabletable1modifycolumncolumn1decimal(10,1)DEFAULTNULLCOMMENT’…

大家好,又见面了,我是你们的朋友全栈君。

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

mysql修改字段类型:	 
--能修改字段类型、类型长度、默认值、注释
--对某字段进行修改
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 '注释'; 
-- 正常,能修改字段类型、类型长度、默认值、注释

mysql修改字段名:
ALTER  TABLE 表名 CHANGE [column] 旧字段名 新字段名 新数据类型;	 
alter  table table1 change column1 column1 varchar(100) DEFAULT 1.2 COMMENT '注释'; -- 正常,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释
alter  table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
alter  table table1 change column2 column1 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
alter  table table1 change column1 column2; -- 报错 

mysql> alter table white_user change column name nick_name  varchar(50) null comment '昵称'; -- 正确
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0

2 修改表名

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)

3 修改表的注释

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='新表-白名单表' 


4

在指定位置插入新字段

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> 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 '姓名',
  `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 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关键字

5 删除字段

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

mysql> alter table white_user_new drop erp ;
Query OK, 0 rows affected (0.02 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='新表-白名单表'      



——————————-

JobShow裁员加班实况

互联网避坑指南:各公司公积金、年(中)终奖、加班回报、福利

薪火相传,欢迎新增,欢迎转发???

【发布3天:累计访问人数 5000+

Mysql修改字段名、修改字段类型

——————————-  

大头记账本

生活花销,便捷清晰,安全加密。免费永久提供服务。

Mysql修改字段名、修改字段类型

——————————-

恋爱花销】记账本

【统计谈恋爱花了多少花哪去了,做到心中有数】

安全加密,免费永久提供服务

Mysql修改字段名、修改字段类型

——————————-

更多企业内的技术应用和使用技巧,请移步至我的公众号【程序员实用技能】

图片

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130167.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 几款永久免费内网穿透,好用且简单(内网穿透教程)

    对于网络用户来说,一定都经历过出门在外无法直接在外网访问内网、或是难以部署异地远程桌面,因此心急如焚的情况;对于企业来说,无论是财务管理软件难以将分店信息同步到总部进行统计汇总、还是员工出差在外或在家里就不能访问企业内部办公系统,都极大地影响了公司整体效率;对于个人开发者来说,微信小程序或者在线支付系统等开发环境往往需要一个可以外部访问的公网环境进行调试,而大多数的企业网络都被运营商做了转发设置,…

    2022年4月16日
    93
  • linux下更新pip3「建议收藏」

    本机linux下有python(表示python2)和python3,其中python3对应pip3。1.首先下载pip#wgethttps://bootstrap.pypa.io/get-pip.py如果没有wget,先安装wget#yum-yinstallwget在python3下执行脚本#python3get-pip.py#执行成功后查看版本…

    2022年4月11日
    230
  • 第七章,activiti个人任务分配,动态指定和监听器指定任务委派人「建议收藏」

    第七章,activiti个人任务分配,动态指定和监听器指定任务委派人「建议收藏」第七章,activiti个人任务分配,动态指定和监听器指定任务委派人

    2022年4月23日
    41
  • 加壳工具简单使用

    加壳工具简单使用时间20210107,环境winxp介绍一些加壳工具和和它们的简单使用,为了方便描述,就先写了一个原程序,原程序的逻辑很简单,代码如下。1. #include<stdio.h>2. intmain()3. {4. inti=5;5. scanf(“%d”,&i);6. while(i–)7. {8. printf(“HelloWorld%d\n”,i);9. }

    2022年6月27日
    29
  • fedora内核版本_ubuntu内核升级

    fedora内核版本_ubuntu内核升级声明一下我的系统环境:WindowsXPSP3+Vmware7虚拟机Fedora12DVDi386安装镜像。首先安装的时候要注意,在选择安装文件的时候选择“网页,软件开发,服务器。。。”这样就用有GCC了,以及其他的插件。 1,下载内核官方网址:www.kernel.org,我下载的版本是2.6.33,文件名为:linux-2.6.33.tar,但是到Li

    2025年11月11日
    4
  • linux smartctl 命令,在 CentOS 7 里用 smartctl 和 hdparm 对硬盘进行基本测试

    linux smartctl 命令,在 CentOS 7 里用 smartctl 和 hdparm 对硬盘进行基本测试新租服务器,想对硬盘的健康情况和读写速度进行基本测试,如使用CentOS7系统,可使用smartctl和hdparm的命令。过程:1.yum-yinstallsmartmontoolshdparm#安装相应的软件2.smartctl–test=short/dev/sda#假如硬盘设备名称是/dev/sda,进行简单测试3.smartctl-lselftest…

    2022年6月20日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号