Microsoft OLE DB提供程序的ODBC驱动程序错误“80040e07”

问题描述:

OKE这一个可能会是柠明显,但后3天在看相同的代码块找到的错误,我开始失去我的脑海里了。Microsoft OLE DB提供程序的ODBC驱动程序错误“80040e07”

下面的代码2块。第一个像魅力一样工作,但第二个虽然我认为它是正确编码不断给我的问题。

SQL = "EXECUTE sp_AddEvent '" &_ 
chrEventName & "','" &_ 
chrEventManager & "','" &_ 
chrEventAssistant & "','" &_ 
txtEventDescr & "','" &_ 
intEventTypeID & "'," &_ 
intEventCatagoryID & "," &_ 
intIncomeModelID & "," &_ 
intEventStatusID & ",'" &_ 
dtEventStart & "','" &_ 
dtEventEnd & "','" &_ 
intMultiArea & "'," &_ 
intMultiLokation & "," &_ 
intMultiDay & ",'" &_ 
dtEventAdded & "','" &_ 
dtEventChanged & "','" &_ 
intEventLastChangedBy & "'" 

' Executing Insert statement. 
SET rsAddEvent = someconnection.EXECUTE(SQL) 

现在是第二块,这是驱使我现在完成疯狂。

SQL = "EXECUTE sp_AddLokation '" &_ 
chrLokationName & "','" &_ 
chrLokationStreet & "','" &_ 
chrLokationCity & "','" &_ 
chrLokationCountry & "','" &_ 
chrLokationSNumber & "','" &_ 
chrLocationZipcode & "','" &_ 
chrLokationPhone & "','" &_ 
chrLokationFax & "','" &_ 
chrLokationEmail & "','" &_ 
chrLokationWebsite & "','" &_ 
intLokationTypeID & "'," &_ 
intMultiArea & "," &_ 
intLokationStatusID & ",'" &_ 
dtLokationAdded & "','" &_ 
dtLokationChanged & "','" &_ 
intLastChangedBy & "'" 

' Executing Insert statement. 
SET rsAddLokation = someconnection.EXECUTE(SQL) 

被调用插入数据的存储过程工作正常,所以它必须是ASP级别的东西。

有没有人有一个建议,这个古怪之前,我开始咀嚼我的键盘上?

另外: 与“在dtlokationAdded前的最后3个int字段之一,我得到一个语法错误附近(取决于通过摆弄影响场)

摆弄时,我要么得到一个VARCHAR到int转换错误或
+1

你肯定没有[SQL注入](http://bobby-tables.com)出现?你将很多值直接填充到查询字符串中,其中很多看起来像是在某处可能至少有一个''''。在执行之前尝试将生成的查询字符串倾出 –

+0

您正在收到什么确切的错误?您是否收到转换错误?我怀疑你传递的日期不是ANSI标准格式。 – LittleBobbyTables

+0

@马克乙 这可能是如此,但话又说回来。为什么更大的插入应用程序工作正常,只是这一个不断给我头痛?在执行前尝试了关于转储生成的查询字符串的建议,但它会在最后3个字段之一中出现语法错误,或者出现varchar到int转换错误。 – Normanius

intLokationTypeID & "'," &_ 

嗯,我注意到在这里你有一套引号,但只有一个apostraphe ...可能会导致错误?或者,等一下,我想我会看到你关闭它的位置。 (!几行了,抱歉)

+0

的评论是的,由于我用引号和撇号搞乱了字段的原始顺序,变得有点混乱。 – Normanius

假设与int开头的所有字段是数值(除intLastChangedBy,这在以前的块用引号括起来;如果是,删除引用过):

SQL = "EXECUTE sp_AddLokation '" &_ 
chrLokationName & "','" &_ 
chrLokationStreet & "','" &_ 
chrLokationCity & "','" &_ 
chrLokationCountry & "','" &_ 
chrLokationSNumber & "','" &_ 
chrLocationZipcode & "','" &_ 
chrLokationPhone & "','" &_ 
chrLokationFax & "','" &_ 
chrLokationEmail & "','" &_ 
chrLokationWebsite & "'," &_ 
intLokationTypeID & "," &_ 
intMultiArea & "," &_ 
intLokationStatusID & ",'" &_ 
dtLokationAdded & "','" &_ 
dtLokationChanged & "','" &_ 
intLastChangedBy & "'" 
+0

事实上,所有'int'字段都是数字,我看到你的建议去了哪里,并且已经尝试过了,没有任何结果。 – Normanius

+0

@Normanius ..你必须看到这个.. http://tutorials.aspfaq.com/8000xxxxx-errors/why-do-i-get-80040e57/80040e07-errors.html – SearchAndResQ

+0

看到它。但是我没有数据类型或字段长度超出范围的问题。我所有的'int'字段都是接收1或0的开关字段。或者它们包含来自其他表的ID值。 “也许这很牵强,但它可能是我发送数据的顺序?这与存储过程“ – Normanius

好的,谢谢所有帮助我在这里!

看来我的问题解决了。 它必须是代码midgets谁昨晚访问了我的访问。除此之外,我无法解释发生了什么。因为当我昨天离开这个项目的时候,肯定是因为地狱根本没有工作。

+0

请标记为接受通过勾选在乐谱下面的空白V图标。 –