PHP中的CONCAT-SQL查询
这是我的代码,但我得到一个SQL语法错误PHP中的CONCAT-SQL查询,php,mysql,Php,Mysql,这是我的代码,但我得到一个SQL语法错误 $insert = "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area1."')"; $insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area2."')"; $insert .= "INSERT IGNORE INTO
$insert = "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area1."')";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area2."')";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area3."')";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area4."')";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area5."')";
执行此查询的正确方法是什么?插入多个元组时,使用的符号为
$insert = "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '".$area1."')";
$insert .= ", (NULL, '".$area2."')";
$insert .= ", (NULL, '".$area3."')";
$insert .= ", (NULL, '".$area4."')";
$insert .= ", (NULL, '".$area5."')";
$insert .= ";";
提供多个INSERT子句表示单独的查询;这可能是可以接受的,取决于MySQL库,但每个都需要代码>终止
也就是说,您确实应该使用参数化查询。当prepare
d时,它们的速度通常与此相当(在一些较大的批量插入之外)。只需指定一次列名,然后用逗号分隔值。乙二醇
插入学生(姓名、年龄)
价值观
(‘约翰’,10岁),
('Bob',10),
('Jeremy',10)
那就换一个吧
在所有语句中“将IGNORE插入位置(位置\u id、位置\u名称)值中”,第一个语句除外,并在末尾插入分号 使用此SQL语法(使用;
):
或
$insert = "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '$area1');";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '$area2');";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '$area3');";
$insert .= "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '$area4');";
$insert = "INSERT IGNORE INTO locations (location_id, location_name) VALUES (NULL, '$area1')";
$insert .= ", (NULL, '$area2')";
$insert .= ", (NULL, '$area3')";
$insert .= ", (NULL, '$area4');";