我最近使用Visual FoxPro OLE DB Provider在VS.NET中访问了一些DBF。一切正常,直到我发现我无法弄清楚如何将参数传递给查询。 我用它作为查询
Select `group`, `i_name`, `j_name`, ... From `mytable` Where `valid` AND `group` IN (@`group1`, @`group2`);
并将两个名为group1
和group2
的参数(带字符串值)添加到参数集合中(即IDbCommand.Parameters
)。
然后我收到了OleDbException,告诉我语法错误。
我试过这个
Select `group`, `i_name`, `j_name`, ... From `mytable` Where `valid` AND `group` IN (?, ?);
它有效。
我只是想知道FoxPro OLE DB Provider是否支持命名参数?如果是这样,如何在查询中引用它?
答案 0 :(得分:3)
FoxPro OLE DB提供程序不支持命名参数。我发现这是我工作的一些问题,所以我最终在FoxPro OLE DB提供程序周围创建了一个包装器。如果您有兴趣,可以使用我的提供者使用命名参数example。