sql中预处理问题的使用

PREPARE record from p_sqll;

EXECUTE record;

DEALLOCATE PREPARE record;

 一直报错 why

图片说明

根据您提供的代码和错误提示信息,可能是因为p_sqll的值在执行预处理时未被正确赋值。您需要确保p_sqll参数的值是正确的,并且与您的SQL语句匹配。您可以在预处理之前打印p_sqll的值来检查它是否符合您的预期。

另外,您可能需要在执行预处理之前使用mysql_real_escape_string函数来处理p_sqll中的特殊字符,以避免SQL注入攻击。例如,

$escaped_sql = mysql_real_escape_string($p_sqll);
$sql = "SELECT * FROM mytable WHERE mycolumn = '$escaped_sql'";

最后,您还需要确保您的mysql连接正常,以便正常执行SQL语句。如果这些方法都无法解决您的问题,请重新检查您的代码,以确保没有其他语法错误或逻辑错误导致错误。