値を prepare および bindValue 関数でバインドするときに、pdo の挿入ステートメントでクエリを実行したい。
pdo で次のようなコードを実行したい:
INSERT INTO test_table1 (`item1`, `item2`, `item3`)
VALUES (
'value of item1',
'value of item2',
(SELECT `value_of_item3` FROM test_table2 WHERE `item_id` = '3' LIMIT 1)
)
mysql と pdo では、値をバインドしないと非常にうまく機能しますが、pdo では次のコードのように値をバインドすると機能しません。
$sth = $db->prepare("INSERT INTO MyGuests (`item1`, `item2`, `item3`)
VALUES (:item1, :item2, :item3)");
$sth->bindValue(':item1', 'value of item1');
$sth->bindValue(':item2', 'value of item2';
$sth->bindValue(':item3', '(SELECT `value_of_item3` FROM test_table2 WHERE `item_id` = '3' LIMIT 1)');
$sth->execute();
誰かが何をすべきか考えていますか?