このクエリでトランザクションを使用したい
DELETE FROM tbl WHERE id IN(?, ?, ?)
ただし、ID の数は可変です。時には2つ、時には5つなど。
?
すべての ID を含む単一の引数を受け入れるように、別の方法で書き直すことはできますか?
コード:
$pdo->beginTransaction();
$st = $pdo->prepare('DELETE FROM tbl WHERE id IN(?, ?, ?)');
foreach( ... ){
$st->execute(array($id1, $id2, $id3));
// but here I may have only 2 IDs to pass, or 5 etc.
}
$pdo->commit();