我的问题是向DB添加新列
// Connection
global $tutorial_db;
$tutorial_db = new mysqli();
$tutorial_db->connect($dbhost, $dbuser, $dbpass, $dbname);
$tutorial_db->set_charset("utf8");
// Check Connection
if ($tutorial_db->connect_errno) {
printf("Connect failed: %s\n", $tutorial_db->connect_error);
exit();
}
$query="alter table groups add order varchar (20)";
$result = $tutorial_db->query($query);
此代码没有做任何事情......
答案 0 :(得分:3)
ORDER
是一个保留字,你需要用反引号引用它,或者为列使用不同的名称。
$query="alter table groups add `order` varchar (20)";
答案 1 :(得分:0)
我怀疑这是因为您的列名为'order',这是一个SQL关键字。如果你真的想要调用它,请用反引号括起来 -
$query="alter table groups add `order` varchar (20)";
但如果可以的话,我建议你把它叫做别的。
答案 2 :(得分:0)
ALTER TABLE `table_name` add COLUMN `column_name` VARCHAR(20);
请注意反引号。它们对于转义列名称很重要,特别是如果你想调用你的列顺序,因为它已经是mysql中的保留字并且具有它自己的含义。