このMySQL挿入クエリは私にError Code: 1241. Operand should contain 1 column(s)
を与えています。MySQL INSERTエラーオペランドには1つのカラムが含まれている必要があります
INSERT INTO esjp_content
(esjp_content.primary_key, esjp_content.template_id, esjp_content.section_ref,
esjp_content.position, esjp_content.indent, esjp_content.content,
esjp_content.summary_id, esjp_content.role_ref, esjp_content.author_id,
esjp_content.event_id, esjp_content.sys_time)
VALUES
((3, 1, 1, 0, 0, 'Some test content.', 0, 1, 1, 69, UNIX_TIMESTAMP(NOW())),
(4, 1, 1, 1, 1, 'Some test content2.', 0, 1, 1, 69, UNIX_TIMESTAMP(NOW())))
ON DUPLICATE KEY UPDATE
esjp_content.primary_key=VALUES(esjp_content.primary_key),
esjp_content.template_id=VALUES(esjp_content.template_id),
esjp_content.section_ref=VALUES(esjp_content.section_ref),
esjp_content.position=VALUES(esjp_content.position),
esjp_content.indent=VALUES(esjp_content.indent),
esjp_content.content=VALUES(esjp_content.content),
esjp_content.summary_id=VALUES(esjp_content.summary_id),
esjp_content.role_ref=VALUES(esjp_content.role_ref),
esjp_content.author_id=VALUES(esjp_content.author_id),
esjp_content.event_id=VALUES(esjp_content.event_id),
esjp_content.sys_time=VALUES(esjp_content.sys_time);
私は一度に1つのレコードを挿入しようとする場合は、正常に動作しますが、私はINSERT
は、単一のステートメントで複数のレコードを挿入するために許可されていると考え。何か案は?
P.S.私はクエリが言い方であることを知っていますが、それはプログラム的に生成されるので問題ありません。
' - あなたはそこに何も更新しません。そうでしょう? – Alex
@Alex表の唯一の一意キーは 'primary_key'です。値がすでに存在する場合は、レコードのすべてのフィールドを、渡されるデータに関係なく更新する必要があります。さもなければ、(指定された 'primary_key'フィールドはゼロでなければなりません。)新しいレコードをテーブルに追加します。 –
@Alex私はそれを認識しています。それはエラーが発生しているので何もしません。だから私は助けを求めている。それをより良くするための建設的な提案があれば、私はアイデアを公開しています。 –