0

为了更改列的顺序,以下工作:

ALTER TABLE contacts  
MODIFY COLUMN id VARCHAR(20) FIRST;    

以下:

ALTER TABLE my_contacts
MODIFY COLUMN id FIRST;  

给我错误:

ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 2 行的“FIRST”附近使用正确的语法

我想知道,是否不能在重新声明其数据类型的情况下更改列的顺序?
列的所有修改是否都必须重新声明数据类型?

4

1 回答 1

2

你的直觉是正确的。ALTER 语句在列的完整类型中必须是显式的。

从文档:http ://dev.mysql.com/doc/refman/5.1/en/alter-table.html

 MODIFY [COLUMN] col_name column_definition
        [FIRST | AFTER col_name]

column_definition 是强制性的。

于 2013-03-31T19:39:25.310 回答