1

我有一个将描述和缩略图插入表格的循环,但并非循环中的所有项目都有描述和缩略图。我不认为这是一个问题,但是sql不会插入它,除非它们有一个值。我认为这可能是由于 not null 的原因,所以我尝试将“null”更改为“yes”。

我将其设置为打印出执行的查询和 mysql 错误:

查询:INSERT INTO Experiments (title, dir, desc, thumbnail) VALUES('3dbox', '3dbox', '', '')

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'desc, thumbnail) VALUES('3dbox', '3dbox', '', '')' 附近使用正确的语法

我也试过这个:

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

但这也不起作用,正如您在查询中看到的那样。

4

3 回答 3

2

desc是Mysql中的保留字。因此,错误。您需要将列名更改为其他名称,或者使用这样的反引号访问它,

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

这是保留字的手册

于 2013-01-03T15:24:32.963 回答
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 回答
1

desc在 mysql 中保留,必须标识为:

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