MySQL不会让我添加列

时间:2011-11-10 14:52:33

标签: mysql alter-table

这应该是一个非常简单的过程,但无论出于何种原因,我都无法在MySQL表中添加列。这是我的语法:

$query = "ALTER TABLE game_licenses ADD lifetime VARCHAR(255) AFTER expire_date";
$result = mysql_query($query);
if (!$result) {
    echo "it failed";
}
else {
    echo "success";
}

我尝试过多次微小的更改,例如在ADD之后将COLUMN添加到查询中。没有MySQL错误,但完成了脚本和回声“它失败了”。

错误是:

  

ALTER命令被用户'webuser'@'localhost'

拒绝

是否可以锁定表格?

1 个答案:

答案 0 :(得分:6)

您没有这样做的权限。

确保您拥有该表的alter权限。

让超级用户(root)执行以下操作:

GRANT ALTER ON dbname.game_licences TO `webuser`@`localhost` 

请参阅:http://dev.mysql.com/doc/refman/5.1/en/grant.html

P.S。您确定要普通用户能够发出alter声明吗? 更好的选择可能是以root身份发出alter语句,甚至更好地创建一个对数据库拥有完全权限的管理员帐户,但不能创建任何其他数据库的完全权限。