10.1.15-MariaDB,PHP 5.4
使用的代码:
$table = 'abc';
mysql_query("ALTER TABLE `$table` ADD PRIMARY KEY (`col`)");
错误:
您的SQL语法有错误;检查手册 对应于您的MariaDB服务器版本,以获得正确的语法 靠近\' ALTER TABLE ...
我尝试过KEY`PRIMARY`并删除所有反引号无效。
更新: 它与扩展无关,使用mysqli_相同的错误进行测试。但是,在不同的服务器环境中使用相同的脚本重复测试是可以的。
答案 0 :(得分:0)
我试过这段代码,它对我有用
$table = 'abc';
$query="ALTER TABLE `".$table."` ADD PRIMARY KEY(`col`);";
/* Execute query */
$result=$mysqli->query($query);
/* Verify results */
if(!$result) {
$ErrMessage = "Error : " $mysqli->error . "\n";
$mysqli->close();
die($ErrMessage);
}
您是否有权修改表格?
答案 1 :(得分:0)
这里是与mysqli的快速连接
$mysqli = new mysqli($db_host, $db_user, $db_pass,$database);
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
die ("<h1>can't use database !</h1>");
exit();
}
/* change character set to utf8 */
if (!$mysqli->set_charset("utf8")) {
printf("error loding 'character set utf8' : %s\n", $mysqli->error);
}
答案 2 :(得分:0)
首先,谢谢大家的帮助。在将脚本复制并粘贴到显示大量错误描述的其他服务器环境后,我得到了答案。
在'\ xef \ xbb \ xbfALTER表附近使用的正确语法
abc
添加主键
魔鬼是 \ xef \ xbb \ xb
这是因为我必须处理多种语言。不过,我确实希望给我一些关于如何在将来避免这种愚蠢错误的建议。