我需要在一个表中添加多个列,但在名为lastname的列之后定位这些列。
我试过了:
ALTER TABLE `users` ADD COLUMN
(
`count` smallint(6) NOT NULL,
`log` varchar(12) NOT NULL,
`status` int(10) unsigned NOT NULL
)
AFTER `lastname`;
我得到这个错误:
你的SQL语法有错误;查看手册
对应于您的MySQL服务器版本,以使用正确的语法
在第7行,在姓氏之后
如何在这样的查询中使用AFTER ?
如果你想在一个特定的字段后面添加一个列,那么下面的MySQL查询应该可以工作:
ALTER TABLE users
ADD COLUMN count SMALLINT(6) NOT NULL
AFTER lastname
如果你想添加多个列,那么你需要每次对一个列使用' add '命令。下面是MySQL查询:
ALTER TABLE users
ADD COLUMN count SMALLINT(6) NOT NULL,
ADD COLUMN log VARCHAR(12) NOT NULL,
ADD COLUMN status INT(10) UNSIGNED NOT NULL
AFTER lastname
注意事项
在第二种方法中,最后一个ADD COLUMN列实际上应该是要附加到表中的第一列。
例如:如果你想添加count, log, status在lastname后面的确切顺序,那么语法实际上是:
ALTER TABLE users
ADD COLUMN log VARCHAR(12) NOT NULL AFTER lastname,
ADD COLUMN status INT(10) UNSIGNED NOT NULL AFTER lastname,
ADD COLUMN count SMALLINT(6) NOT NULL AFTER lastname