sql >> データベース >  >> RDS >> Mysql

ZendFramework1.5でINSERT...ON DUPLICATE KEY UPDATEを実行する方法はありますか?

    私はZendで働き、特にZend_Dbでかなり働きました。

    いいえ、ON DUPLICATE KEY UPDATEのAPIサポートはありません 構文。この場合、単にquery()を使用する必要があります 完全なSQLステートメントを自分で作成します。

    harvejsが示すように、SQLに値を補間することはお勧めしません。クエリパラメータを使用します。

    編集:VALUES()を使用すると、パラメーターの繰り返しを回避できます 式。

    $sql = "INSERT INTO sometable (id, col2, col3) VALUES (:id, :col2, :col3)
      ON DUPLICATE KEY UPDATE col2 = VALUES(col2), col3 = VALUES(col3)";
    
    $values = array("id"=>1, "col2"=>327, "col3"=>"active");
    


    1. MySQLで今日以上の日時

    2. SQLServerのメッセージ8114「データ型varcharから数値への変換エラー」を修正しました

    3. mysql:テーブルBに存在しない場合は、テーブルAからすべてのアイテムを選択します

    4. MariaDBでのEXPORT_SET()のしくみ