当我将简单的选择查询“select * from [Sheet1 $]”工作正常并从sheet1中检索数据时,我试图从Excel(作为数据库)获取数据。但是当我把条件语句(where或Like)抛出时会出现错误“错误2147217904没有给出一个或多个必需参数的值”。
查询哪个是抛出错误---
“select * from [Sheet1 $] WHERE [Sheet1 $]。[ColName] = User” OR
“select * from [Sheet1 $] WHERE [ColName] =”& ColName_RunTime 要么 “SELECT * FROM [Sheet1 $ A2:E2] WHERE ColName = Yes”
提前感谢您的帮助或解决方案。
答案 0 :(得分:0)
错误为0x80040E10L DB_E_PARAMNOTOPTIONAL没有给出一个或多个必需参数的值。请参阅:https://technet.microsoft.com/en-us/library/ms171852(v=sql.110).aspx
有效地,正如您所指出的,您为WHERE子句提供值的方式有问题。看来你想提供一个字符串,因此,它们必须用单引号括起来。
"select * from [Sheet1$] WHERE [Sheet1$].[ColName]= 'User' "