这个SQL语句有什么问题

时间:2010-05-19 14:13:55

标签: sql mysql

错误是:

您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以便在第1行“RA --- SIN”,“DEC - SIN”,0.0,-90.0)附近使用正确的语法

INSERT INTO files_table (filename, folder, survey, telescope, author, observer, equinox, ctype1, ctype2, crval1, crval2) VALUES('H001_abcde_luther_chop.fits', 'C:\dev\data\FITS\surveys\', '', '','', -1.0, 'RA---SIN', 'DEC--SIN', 0.0,-90.0)

创建表的语句是(换行符只是为了便于阅读)

 create table files_table (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
 filename varchar(255), folder varchar(255), survey varchar(255), telescope varchar(255), 
 author varchar(255), observer varchar(255), equinox double, ctype1 varchar(255), ctype2
 varchar(255), crval1 double, crval2 double);
  • 是因为我使用'而不是' - 这并没有让我感到困扰
  • 是由于 - 在RA --- SIN和DEC - SIN

3 个答案:

答案 0 :(得分:12)

这是因为单引号前的反斜杠。逃避你的反斜杠(如\\),它应该没问题。

答案 1 :(得分:6)

我认为这是因为你错过了一个值

您有11列命名,只有10个值

答案 2 :(得分:0)

这是因为你试图将RA-SIN插入到equinox列中,这是double类型。

我相信你错过了'',所以查询会像这样工作:

INSERT INTO files_table(文件名,文件夹,调查,望远镜,作者,观察者,equinox,ctype1,ctype2,crval1,crval2)VALUES('H001_abcde_luther_chop.fits','C:\ dev \ data \ FITS \ surveys \' ,'','','',''-1.0,'RA --- SIN','DEC - SIN',0.0,-90.0)