【发布时间】:2013-07-19 06:30:48
【问题描述】:
我写了一个查询,它直接通过服务器上的 MySQL 运行,如下所示:
CREATE TABLE tmp_1 (user1 varchar(255), pid int(11));INSERT INTO
famgallery.tmp_1SETuser1= (SELECTtitleFROMcpg15x_albumsWHEREaid= (SELECT帮助来自 cpg15x_pictures WHERE pid=(select max(pid) from cpg15x_pictures))); 更新famgallery.tmp_1设置pid= (从 cpg15x_pictures 中选择 MAX(pid)) ;更新 cpg15x_pictures f, tmp_1 t SET f.user1 = t.user1 WHERE f.pid = t.pid;删除表 tmp_1;
问题在于尝试将其移至 PHP:
cpg_db_query("CREATE TABLE tmp_1 (user1 varchar(255), pid int(11));INSERT INTO
famgallery.tmp_1SETuser1= (SELECTtitleFROMcpg15x_albumsWHEREaid= (从 cpg15x_pictures 中选择帮助 pid=(从 cpg15x_pictures 中选择 max(pid)))); 更新famgallery.tmp_1设置pid= (从 cpg15x_pictures 中选择 MAX(pid)) ;更新 cpg15x_pictures f, tmp_1 t SET f.user1 = t.user1 WHERE f.pid = t.pid;删除表 tmp_1;")
经过一天的实验,应用程序不断给我这个严重错误:
mySQL 错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以了解在附近使用的正确语法:
'INSERT INTO cpg15x_tmp_1 SET `user1` = (SELECT `title` FROM cpg15x_albums WHERE ' at line 1. File: /home/content/47/9243147/html/family/include/functions.inc.php - Line: 270
我开始认为应用程序代码中的某个地方存在冲突,因为我不明白为什么它直接在服务器上运行良好,但在经过这么多的修补后无法在 PHP 中运行。任何想法将不胜感激。
cpg_db_query 内置在应用程序中。据我所知,它执行与mysqli_query 相同的操作。
相关文件:
【问题讨论】:
-
您确定
cpg_db_query()允许多个查询吗?您可能需要将其拆分为多个cpg_db_query()s