gpt4 book ai didi

sql - 安装脚本MySQL语法错误 "You have an error in your SQL syntax; [...] "

转载 作者:行者123 更新时间:2023-11-29 01:47:23 25 4
gpt4 key购买 nike

我的网站上有一个安装脚本,当我运行它时,它给我这个错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CREATE TABLE active_guests ( ip varchar(15) collate latin1_general_' at line 2

这是它似乎有问题的代码:

$sql = 'SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
CREATE TABLE `active_guests` (
`ip` varchar(15) collate latin1_general_ci NOT NULL,
`timestamp` int(11) unsigned NOT NULL,
PRIMARY KEY (`ip`)
);';

mysql_query($sql,$con) or die(mysql_error());

$sql = 'CREATE TABLE `active_users` (
`username` varchar(30) collate latin1_general_ci NOT NULL,
`timestamp` int(11) unsigned NOT NULL,
PRIMARY KEY (`username`)
);';

mysql_query($sql,$con) or die(mysql_error());

$sql = 'CREATE TABLE `banned_users` (
`username` varchar(30) collate latin1_general_ci NOT NULL,
`timestamp` int(11) unsigned NOT NULL,
PRIMARY KEY (`username`)
);';

此后继续,但基本上就是这样。任何人都可以把事情弄清楚吗?提前致谢!

最佳答案

每次调用 mysql_query() 只能运行一个语句。

所以你必须运行 SET SQL_MODE ... 然后单独运行第一个 CREATE TABLE ...


关于您的评论:我建议您坚持在每次调用 mysql_query() 或其在 mysqli 或 PDO 中的等效项时运行一条语句。这样做确实没有明显的缺点,而且这是防止某些形式的 SQL injection 的好方法。 .

关于sql - 安装脚本MySQL语法错误 "You have an error in your SQL syntax; [...] ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3376408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com