-1

私はこれが非常に基本的な質問であることを知っていますが、私はこれに3時間立ち往生しており、何が悪いのか理解できませんでした. このクエリの何が問題なのか教えてください。

insert into user_to_deliverable set d_id = 1 u_id = 4 

次のエラーが発生しています

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'u_id = 4' at line 1

回答に従ってクエリを修正しましたが、コードを介して挿入しないphpmyadminでのみ実行されています。これが私のコードです

foreach($_POST['user'] as $k=>$v) {

      echo    $ins_u_deliverable =   "insert into user_to_deliverable set d_id = ".$_POST['dlvrbl_id'].", u_id    =   $v "."<br />";

      mysql_query($ins_u_deliverable);
    } 

ユーザーの配列は

[user] => Array
    (
        [0] => 4
        [1] => 5
    )
4

4 に答える 4

2

通常、set 構文は次のようになります。

INSERT INTO table SET a=1, b=2, c=3

コンマが足りないと思います。つまり、クエリは次のようになります。

insert into user_to_deliverable set d_id = 1, u_id = 4

それでもうまくいかない場合は、指定しているすべての要素が存在することを確認してください。

編集:構文は正しいように見えます。トラブルシューティングのために、正確な値を取得していることを確認します

$_POST['dlvrbl_id'] and $v

変数がすべて正しいことを確認します。

于 2012-09-03T20:09:35.077 に答える
1

レコードを挿入しようとしていますか?

次のようなことをしなければなりません:

INSERT INTO user_to_deliverable (d_id, u_id)
VALUES (1, 4)

http://www.w3schools.com/sql/sql_insert.aspを参照してください。

于 2012-09-03T20:09:02.957 に答える
1

2 つの異なるコマンド INSERT と UPDATE の構文を組み合わせて、SQL に存在しない新しいコマンドを作成しています。

INSERT の正しい構文:

 INSERT INTO user_to_deliverable (d_id, u_id) VALUES (1, 4)
于 2012-09-03T20:10:42.300 に答える
0

問題を引き起こしていた問題を解決し、<br />それを削除して、クエリがうまくいきました:)ありがとうございました:)

于 2012-09-03T20:28:36.890 に答える