开发者社区> 问答> 正文

MySQL 中怎么修改字段名,不更改属性?

我会用
ALTER TABLE 表 MODIFY 列 属性
来改属性,

也会用
ALTER TABLE 表 CHANGE 原列名 新列名 新属性等
来改 列名 和 属性;

请问怎么只改名,不改属性,

因为有可能某个列的属性很多个, INT UNSIGNED AUTO_INCREMENT PRIMARY KEY ZEROFILL 都有,
我不想改列名的时候,还得先用 SHOW CREATE TABLE 表 看一遍列属性,然后再复制;

请问有什么命令可以只改列名呢?

————————————————————————————————————————————————————————————————————————————————————————

mysql> DESC c200401;
+----------+--------------------------------------------------------------------+------+-----+----------------+----------------+
| Field    | Type                                                               | Null | Key | Default        | Extra          |
+----------+--------------------------------------------------------------------+------+-----+----------------+----------------+
| id       | tinyint(3) unsigned zerofill                                       | NO   | PRI | NULL           | auto_increment |
| 学籍编号 | char(18)                                                           | YES  | UNI | NULL           |                |
| 姓名     | char(50)                                                           | NO   | MUL | NULL           |                |
| 性别     | enum('男','女')                                                    | YES  |     | 男             |                |
| 档案     | char(20)                                                           | YES  |     | 沂水县实验中学 |                |
| 职务     | set('班长','副班长','学习委员','文艺委员','体育委员','团支部书记') | YES  |     | NULL           |                |
+----------+--------------------------------------------------------------------+------+-----+----------------+----------------+
6 rows in set

mysql> ALTER TABLE c200401 RENAME COLUMN id TO idid;
1064 - You have an error in your SQL syntax; check the manual that corresponds to your 

展开
收起
a123456678 2016-07-04 17:48:01 2601 0
1 条回答
写回答
取消 提交回答
  • ALTER TABLE 表 CHANGE 原列名 新列名 新属性;

    2019-07-17 19:51:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像