我需要在一个表中添加多列,但要把这些列放在***列的后面,称为`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服务器版本对应的手册。 与你的MySQL服务器版本相对应的手册,以了解使用的正确语法。 靠近 ')AFTER
lastname
' 在第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
**列实际上应该是你想追加到表中的第一列。
例如:如果你想在 "lastname "之后按照准确的顺序添加 "count"、"log"、"status",那么语法实际上是。
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