1
$stmt = $db->prepare("UPDATE reservations SET name = :name, start = :start, end = :end, room_id = :room, status = :status, paid = :paid, customer = :customer, name_ship = :name_ship, equipment = :equipment, port = :port, ETA = :ETA, ETD = :ETD, service_id = :service_id, service_classification = :service_classification, job = :job WHERE id = :id");
こんにちは! 私はこのクエリを持っており、INSERT形式に変換したいと思います。 このようにしたときは、何も起こりません。あなたはWHERE
句をドロップする必要がありますINSERT
をやっているので、あなたのアドバイスSQLの更新を挿入する
"INSERT INTO reservations (name, start,...) VALUES (:name, :start,...) WHERE id = :id";
なぜあなたの 'insert'文に' where'基準がありますか?どのデータ型が 'id'ですか?自動インクリメントの場合は、 'where'基準を削除してください。そうでない場合は、列と値のリストにその値を含める必要があります。 – sgeddes
"INSERT形式"とはどういう意味ですか? 'INSERT'と' UPDATE'は2つの全く異なることを行います:あなたが達成したい操作であるものを使います。 –
'INSERT INTO ... WHERE'は意味がありません。条件付き挿入はできませんが、条件付きで*挿入することができます。あなたは['ON DUPLICATE KEY'](http://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html)機能について考えていますか? – tadman