重命名mysql表中的列,而不必重复其类型定义

TMS*_*TMS 15 mysql alter-table

是否可以重命名MySQL中的列而不必重复其类型定义?

请不必侵入information_schema.

Álv*_*lez 11

ALTER TABLE语法似乎并没有提供这样的可能性:

ALTER [ONLINE | OFFLINE] [IGNORE] TABLE tbl_name
    [alter_specification [, alter_specification] ...]
    [partition_options]

ALTER [ONLINE | OFFLINE] [IGNORE] TABLE tbl_name
    partition_options

alter_specification:
    table_options
[...]
  | CHANGE [COLUMN] old_col_name new_col_name column_definition
        [FIRST|AFTER col_name]
  | MODIFY [COLUMN] col_name column_definition
        [FIRST | AFTER col_name]
[...]
Run Code Online (Sandbox Code Playgroud)

更具体地说:

当您使用CHANGEor时MODIFY,column_definition必须包含应该应用于新列的数据类型和所有属性,而不是索引属性(如PRIMARY KEY或)UNIQUE.原始定义中存在但未为新定义指定的属性不会继续使用.