Firebird 2.5 sql错误代码= -104。令牌无效

时间:2014-01-27 09:10:35

标签: c# firebird

我确实要求并收到错误

  

令牌无效。动态SQL错误。 SQL错误代码= -104。令牌未知    - 第1行,第66栏。日期。

DATE char(25)

所有字段都有效,没有日期

INSERT INTO BASE(ID,INV_NUM,PRODUCER_TYPE,PRODUCER_COUNTRY,MODEL,DATE,DEVICE_TYPE,NAME,SURNAME,MIDDLE,DOB) VALUES(1,112,'D-Link','China','AP','12.10.2004','Asd','Wood','Ivanov','Middle','07.01.2014')

2 个答案:

答案 0 :(得分:2)

单词DATE是一个保留字(在标准SQL和Firebird中)。您需要引用它以便能够将其用作查询中的列(或其他对象)。

所以改成它:

INSERT INTO BASE(..., MODEL, "DATE", DEVICE_TYPE,...)  ...

对于日期,您不应使用CHAR类型,而应使用DATE类型。

答案 1 :(得分:0)

始终使用Date()表示日期... 07.01.2014使用此2014-01-07

INSERT INTO BASE(ID,INV_NUM,PRODUCER_TYPE,PRODUCER_COUNTRY,MODEL,DATE,DEVICE_TYPE,NAME,SURNAME,MIDDLE,DOB) VALUES(1,112,'D-Link','China','AP','2004-10-12','Asd','Wood','Ivanov','Middle','2014-01-07')