在使用VB.net/Django/PostgreSQL向表中插入条目时遇到问题
我试图在表中插入一个条目,但服务器会这样说在使用VB.net/Django/PostgreSQL向表中插入条目时遇到问题,django,vb.net,postgresql,Django,Vb.net,Postgresql,我试图在表中插入一个条目,但服务器会这样说 column "Date" is of type date but expression is of type integer at character 131 这是SQL语句,我也可以显示VB.net,但它是一个可怕的混乱 INSERT INTO "Inventory_chemicalrecord"("Barcode","Action","Name_id","Building","Qty","Date") VALUES ('IEN0001','AD
column "Date" is of type date but expression is of type integer at character 131
这是SQL语句,我也可以显示VB.net,但它是一个可怕的混乱
INSERT INTO "Inventory_chemicalrecord"("Barcode","Action","Name_id","Building","Qty","Date") VALUES ('IEN0001','ADD',1,'Marcus',1,2013-07-10);
这是我正在传递的字符串
mySQLString = "INSERT INTO "&Chr(34)&"Inventory_chemicalrecord"&Chr(34)&"("&Chr(34)&"Barcode"&Chr(34)& ","&Chr(34)&"Action"&Chr(34)& ","&Chr(34)&"Name_id"&Chr(34)& ","&Chr(34)&"Building"&Chr(34)& "," &Chr(34)&"Qty"&Chr(34)& ","&Chr(34)&"Date"&Chr(34)& ") VALUES ("& code & "," &Chr(39)& Action &Chr(39) & "," & Name_id & "," & Building & ","& OriginalQty & "," & CurDate & ");"
对不起,这是我发现的唯一方法,如果这是错误的方法,请通知我
我试过了
Chr(39)&CurDate&Chr(39)
"'"&CurDate&"'"
甚至设置
CurDate = Chr(39)&CurDate&CurDate(39)
我不断得到预期的EOF和类型&与字符串不匹配
有更好的方法吗?错误信息非常清楚 日期需要用引号括起来:
'2013-07-10'
INSERT INTO "Inventory_chemicalrecord"("Barcode","Action","Name_id","Building","Qty","Date") VALUES ('IEN0001','ADD',1,'Marcus',1,2013-07-10);
应该是
INSERT INTO "Inventory_chemicalrecord"("Barcode","Action","Name_id","Building","Qty","Date") VALUES ('IEN0001','ADD',1,'Marcus',1,'2013-07-10');
错误信息非常清楚 日期需要用引号括起来:
'2013-07-10'
INSERT INTO "Inventory_chemicalrecord"("Barcode","Action","Name_id","Building","Qty","Date") VALUES ('IEN0001','ADD',1,'Marcus',1,2013-07-10);
应该是
INSERT INTO "Inventory_chemicalrecord"("Barcode","Action","Name_id","Building","Qty","Date") VALUES ('IEN0001','ADD',1,'Marcus',1,'2013-07-10');
我想这意味着它是一个整数类型。我早就试过了,但运气不好。部分原因是因为我将其作为要解析的字符串传递。你介意看看我做错了什么吗?用引号括起来就行了。你应该没事的。另外,如果不知道代码,很难猜出错误。@user2482595在您的查询中
2013-07-10
表示2013减去7减去10
。而'2013-07-10'
是指SQL中的日期(具有正确的日期/时间设置)。谢谢,我没有意识到这一点。我只是假设,因为它说这是一个日期,它会这样对待它。你知道的越多:bI硬编码,看看这是否是问题所在。谢谢你。现在要弄清楚如何不硬编码它:PI认为这意味着它是一个整数类型。我早就试过了,但运气不好。部分原因是因为我将其作为要解析的字符串传递。你介意看看我做错了什么吗?用引号括起来就行了。你应该没事的。另外,如果不知道代码,很难猜出错误。@user2482595在您的查询中2013-07-10
表示2013减去7减去10
。而'2013-07-10'
是指SQL中的日期(具有正确的日期/时间设置)。谢谢,我没有意识到这一点。我只是假设,因为它说这是一个日期,它会这样对待它。你知道的越多:bI硬编码,看看这是否是问题所在。谢谢你。现在要弄清楚如何不硬编码:难道没有办法使用绑定参数而不是插入字符串连接吗?有没有办法在您使用的框架中准备语句/传递参数?这是正确进行此类查询的唯一方法。我一点也不知道。我使用django查询来确定SQL应该是什么,然后对其进行处理,并使用print语句,直到字符串是它应该被移动到下一个的字符串。这是我第一次处理SQL。是否有某种方法可以使用绑定参数代替插入时的字符串连接?是否有任何方法可以在您使用的框架中准备语句/传递参数?这是正确进行此类查询的唯一方法。我一点也不知道。我使用django查询来确定SQL应该是什么,然后对其进行处理,并使用print语句,直到字符串是它应该被移动到下一个的字符串。这是我第一次处理SQL。