は、私は、このリンクON UPDATE DUPLICATE KEYに構文エラーがありますか?
SQL - IF EXISTS UPDATE ELSE INSERT INTO
以下、初めてのON UPDATE DUPLICATE KEY句を使用しようとしていたと私は私のSQL構文でエラーが取得しています:
SQLSTATEを[ 42000]:構文エラーまたはアクセス違反:1064 SQL構文に エラーがあります。あなたの MySQLサーバのバージョンに対応するマニュアルをチェックして、正しい構文が「AJAY KUMAR」の近くで使用するようにしてください) ' 2行目で実行されているSQLは、INSERT INTO fee_acc_balance (guardian_name、account_no、paid_amount、due、days_overdue、重複キー更新時にguardian_name = VALUE( 'AJAY KUMAR'、 '0'、12550、0、 12550、 '2017-02-10 21:28:05' 「)エラー情報:配列([0] => 42000 [1] => 1064 [2] =>あなたはエラーを持っている...
私の場合は一意のキーはaccount_no
であり、これは私ですsql:
INSERT INTO fee_acc_balance (guardian_name, account_no, paid_amount, due, days_overdue, total_fees, updated_on)
VALUES ('$father_name', '$account->account_no', $payments, $sum, 0, $sum,'$now')
ON DUPLICATE KEY UPDATE guardian_name = VALUES ('$father_name')
エラーはどこにありますか?
ON DUPLICATE KEY UPDATE guardian_name = VALUES ('$father_name')
は、割り当ての右側の部分がVALUES
から入ってくる新しいフィールドがあることを
ON DUPLICATE KEY UPDATE guardian_name = VALUES(guardian_name)
お知らせして試してみて、左側:
あなたの質問に変数定義を追加できますか? $ father_nameはどこから来たのですか? – Nathan
これはリンゴが熟しているかどうかを尋ねているかのように聞こえますが、私は2つのリンゴと3つのリンゴの合計を求めます:)しかし、あなたが答える前に知っていなければならない場合、$ father_nameは別のデータベース呼び出しから来ています。上記のすべての変数は、さまざまなデータベースや関数呼び出しで計算されています。私は彼らがこの質問に答えることは不必要であると確信しています。私に情報を伝えれば十分です。 –