prepare("truncate table packed_items"); 并且 $stmt 设置为 mysqli_stmt 对象,-6ren">
gpt4 book ai didi

php - mysql准备好的语句 "truncate table ?"返回null

转载 作者:行者123 更新时间:2023-11-29 13:42:51 24 4
gpt4 key购买 nike

在我可以使用的截断表的函数中

$stmt = $mysqli->prepare("truncate table packed_items");

并且 $stmt 设置为 mysqli_stmt 对象,但是
如果我尝试

$stmt = $mysqli->prepare("truncate table ?");

然后 $stmt 设置为 null 并且语句:

$stmt->bind_param("s", $mytable)

会因错误而崩溃
在非对象上调用成员函数bind_param()

我正在使用参数化准备好的语句来选择、插入和更新,没有任何问题。

最佳答案

除了数据之外,您不能绑定(bind)任何 SQL 文字。没有关键字,没有运算符,没有标识符。

如果您确实需要动态截断表,但还不知道名称(因为随机截断表显然是非常糟糕的设计的标志),请根据白名单检查表名称,正确格式化它,然后插入请求参数。

关于php - mysql准备好的语句 "truncate table ?"返回null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17854852/

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