我准备的声明如下:
$stmt20 = $conexao->prepare("
INSERT INTO esc_usuarios_pgtoparcelas (parcela_codigo_plano, parcela_mes, parcela_valorBonificacao, parcela_situacao)
VALUES
(LAST_INSERT_ID(), ?, ?, ?),
(LAST_INSERT_ID(), ?, ?, ?)
");
$stmt20->bind_param('sdssds', $m1, $zero, $parcela_situacao_prog, $m2, $zero, $parcela_situacao_prog);
$stmt20->execute();
如您所见,参数是重复的,除了 $m1
以及 $m2
. 我可以将这些重复的参数绑定到多个值并保留这些值吗 m1
以及 m2
? 即使我必须插入许多值,绑定顺序也不会改变。
2条答案
按热度按时间bwitn5fc1#
通常情况下,您不会像这样重复,而是准备一次语句,然后用不同的值运行两次。我不是php程序员,所以我借用了gmb的帖子:
如果有1000个值要插入,那么就准备一次语句并执行1000次(在循环中)。。
在mysqli的php帮助文档中,我猜针对您的情况的代码可能更像:
我主要是想理解这样一个概念,即设置一次,然后jsut更改值并反复调用execute。。
当然,我不是php程序员。。我引用了这个:php/mysql:mysqli prepared语句在for循环中多次插入相同的值
dxpyg8gm2#
您需要使用命名参数,而不是使用问号参数。请参阅php文档。