Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Firebird 2.5 sql错误代码=-104。无效令牌_C#_Firebird - Fatal编程技术网

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

C# Firebird 2.5 sql错误代码=-104。无效令牌,c#,firebird,C#,Firebird,我请求并得到一个错误 无效令牌。动态SQL错误。SQL错误代码=-104。令牌未知 -第1行,第66列。日期 所有字段都工作,没有日期 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','Midd

我请求并得到一个错误

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

所有字段都工作,没有日期

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')
始终对日期使用
Date()
。。。2014年1月7日使用此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')

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

因此,将其更改为:

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

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

更好的方法是使用ISO-8601格式(yyyy-MM-dd),即2014-01-07,但这不是错误的原因。
INSERT INTO BASE(..., MODEL, "DATE", DEVICE_TYPE,...)  ...