Mysql如何修改字段名和修改字段类型
短信预约 -IT技能 免费直播动态提醒
这篇文章主要讲解了“Mysql如何修改字段名和修改字段类型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql如何修改字段名和修改字段类型”吧!
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='新表-白名单表'
感谢各位的阅读,以上就是“Mysql如何修改字段名和修改字段类型”的内容了,经过本文的学习后,相信大家对Mysql如何修改字段名和修改字段类型这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341