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 MySQL server version for the right syntax to use near 'COLUMN id TO idid' at line 1
阅读 8.4k
1 个回答

好像并没有办法,就是只有这样:

ALTER TABLE 表 CHANGE 原列名 新列名 新属性;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题