私はテーブルを持っています:
up_rel
> |--id--|--uid--|--pid--|--show--|
私はこの挿入シーケンスを行っています:
$icat_sth = $dbh->prepare("INSERT INTO product_category (name, parent) VALUES(:name, :parent)");
$icat_sth->bindParam(':name', $post['cat_name']);
$icat_sth->bindParam(':parent', $post['parent_category']);
$icat_sth->execute();
$pid = $dbh->lastInsertId();
$rel_sth = $dbh->prepare("INSERT INTO up_rel (uid, pid, show) VALUES(:uid, :pid, :show)");
$rel_sth->bindParam(':uid', $uid);
$rel_sth->bindParam(':pid', $pid);
$rel_sth->bindParam(':show', '1');
$rel_sth->execute();
echo $dbh->lastInsertId();
製品カテゴリへの最初の挿入はスムーズに行われますが、次の挿入でエラーが返されます:
1064 SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、1 行目の「show) VALUES(?, ?, ?)」付近で使用する正しい構文を確認してください。
挿入からショーを削除すると機能します。
私はそれを値に入れよう(:uid, :pid, 1)
としましたが、バインドではそれを引用しましたが、引用しませんでした。
足りないものはありますか?