1

説明とサムネイルをテーブルに挿入するループがありますが、ループ内のすべてのアイテムに説明とサムネイルがあるわけではありません。これが問題になるとは思いませんでしたが、値がない限り、SQLはそれを挿入しません。nullではないことが原因かもしれないと思ったので、「null」を「yes」に変えてみました。

実行されたクエリとmysqlエラーを出力するように設定しました。

クエリ:INSERT INTO実験(タイトル、ディレクトリ、説明、サムネイル)VALUES( '3dbox'、 '3dbox'、''、'')

SQL構文にエラーがあります。1行目の'desc、thumbnail)VALUES(' 3dbox'、' 3dbox'、''、'')'の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。

私もこれを試しました:

$d = @file_get_contents("/experiments/$sites[$i]/desc.txt") or false;

しかし、クエリでわかるように、それも機能しません。

4

3 に答える 3

2

descMysqlの予約語です。したがって、エラー。列名を別の名前に変更するか、次のようなバッククォートでアクセスする必要があります。

INSERT INTO experiments (title, dir, `desc`, thumbnail) VALUES('3dbox', '3dbox', '', '')

こちらが予約語のマニュアルです。

于 2013-01-03T15:24:32.963 に答える
1

descmysqlで予約されており、次のように識別する必要があります。

INSERT INTO experiments (title, dir, `desc`, thumbnail) VALUES('3dbox', '3dbox', '', '')
于 2013-01-03T15:24:56.140 に答える
1

予約語であるため、列名として「desc」を使用することはできません:http ://dev.mysql.com/doc/refman/5.5/en/reserved-words.html、エスケープする必要があります:変更してみてくださいこれに対するクエリ:

INSERT INTO experiments (title, dir, `desc`, thumbnail) VALUES('3dbox', '3dbox', '', '');
于 2013-01-03T15:25:01.530 に答える