如何在mysql php中添加新列

时间:2014-08-29 20:38:20

标签: php mysql alter

我的问题是向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);

此代码没有做任何事情......

3 个答案:

答案 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中的保留字并且具有它自己的含义。