为什么这个ALTER TABLE查询抛出语法错误?

时间:2013-05-16 08:34:17

标签: mysql phpmyadmin syntax-error alter-table

这是我正在使用的查询:

ALTER TABLE apartment ADD technical TEXT NOT NULL AFTER is_sale

为什么会产生语法错误?

编辑:

ALTER TABLE apartment ADD COLUMN technical TEXT NOT NULL AFTER is_sale仍然会产生错误:

Error: (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 'ALTER TABLE andreevka_apartment ADD COLUMN technincal TEXT NOT NULL AFTER' at line 1

也不验证:http://developer.mimer.com/validator/parser200x/index.tml#parser

5 个答案:

答案 0 :(得分:5)

事实证明,我的查询是从PhpMyAdmin复制粘贴的,并且有一些编码问题。我将它粘贴到Notepad ++中,将其转换为ANSI并且它可以工作。奇怪的。

语法非常好。

答案 1 :(得分:0)

您有语法错误,要添加列,您应该在句子中使用COLUMN

ALTER TABLE apartment ADD COLUMN technical TEXT NOT NULL

EDITED

我认为您不能将AFTERALTER一起使用,因为它不关心列顺序,它与存储或查询无关。

答案 2 :(得分:0)

ALTER TABLE apartment ADD technical TEXT NOT NULL AFTER is_sale工作正常,我测试了它。我使用 HeidiSQL 作为客户端。不需要ADD COLUMN.check is_sale 名称是否正确或公寓名称正确

答案 3 :(得分:-1)

使用ADD COLUMN添加新列

ALTER TABLE apartment ADD COLUMN technical TEXT NOT NULL AFTER is_sale

答案 4 :(得分:-1)

不确定它是否允许在MySQL中使用,但在Oracle中还有另一种语法:

ALTER TABLE apartment ADD (technical TEXT NOT NULL AFTER is_sale);