2014-08-29 85 views
0

什麼我的問題,以添加新列到DB如何在PHP MySQL的添加新列

// 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

ORDER是一個保留字,你需要用反引號引用它,或者爲該列使用不同的名稱。

$query="alter table groups add `order` varchar (20)"; 
0

我懷疑這是因爲你的列被稱爲'order',這是一個SQL關鍵字。如果你真的想將它命名順序,反引號括起來 -

$query="alter table groups add `order` varchar (20)"; 

但我建議如果可以的話,你把它叫做別的東西。

0
ALTER TABLE `table_name` add COLUMN `column_name` VARCHAR(20); 

請注意反引號。它們對於轉義列名非常重要,特別是如果您希望調用您的列順序,因爲這已經是mysql中的保留字,並且具有它自己的含義。

+1

'colmun'?嗯? – 2014-08-29 20:42:13

+0

是的,一個錯字。固定。 – CarCzar 2014-08-29 20:44:08