2

データベースには info と comment の 2 つのテーブルがあり、それらの構造は次のとおりです。

info (id(int(10)), name(varchar(80)), ...19 other columns.., phone(int(16)));
comment (id(int(10)), name(varchar(80)), comment(varchar(80)), phone(int(16)));

これらの SQL クエリを実行すると:

INSERT INTO info (name, ...19 other columns.., phone) VALUES ('asa', ....., 123456) 

それは完全にうまく機能します。

しかし、 になるとINSERT INTO comment (name, address, phone) VALUES ('asa', 'asa', 123456)、このように電話番号をバッククォートで囲まない限り、SQL 構文エラーが報告されます`phone`



正直なところ、バックティックを追加することですべてのことを実行できますが、それが機能する理由を知りたいです。前もって感謝します!

4

2 に答える 2

0

挿入しようとしているアドレスにコンマまたは何かが含まれているため、そのコンマを超えるすべてのものを電話フィールドに挿入しようとしていると思います。

于 2012-12-18T10:12:18.230 に答える
0

テーブル構造 name,comment, phone

あなたのSQLコマンド (アドレスとコメントは異なります)name,address, phone

すべての列と「挿入先」の名前がそれらの間でまったく一致していることを確認してください。

エラーメッセージは重要です。可能であれば投稿してください。テーブルの列名全体と「insert into」ステートメント全体を表示することも重要です。

于 2013-01-08T05:54:35.400 に答える