这返回 true 但它没有截断表:
$this->db->query("TRUNCATE TABLE $tablename");
但它在为准备好的语句创建数据库连接对象之前起作用。
如何修复它?另外,我想知道如何使用准备好的语句截断表。
NO,准备好的语句不是解决方案,因为它无法绑定表名。
因此避免对 Truncate Table 使用准备好的语句。
您不能绑定任何 SQL 文字l 但数据一。因此关键字、运算符和任何标识符都不能使用准备好的语句进行绑定。您只能绑定数据。
PDO 准备语句在使用用户输入运行查询时非常有用,因为它们允许您使用绑定参数等功能来清理用户输入。
所以在我的建议中,你不应该使用准备好的语句来截断表。
如果您确实想使用准备好的截断,如果您正在使用 Opencart,请使用以下代码:
$sql = sprintf('TRUNCATE TABLE %s%s', DB_PREFIX, $table);
$this->db->query($sql);
尝试一次并让我知道
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)