无法从 .NET OleDB.DataReader 检索行
Posted
技术标签:
【中文标题】无法从 .NET OleDB.DataReader 检索行【英文标题】:Cannot retrieve rows from .NET OleDB.DataReader 【发布时间】:2012-11-29 12:52:52 【问题描述】:我的 SQL 语句有问题。
我的环境如下:
通过 .NET OleDB.DataReader 查询 MS Access (2002) 的 VB.NET 应用程序该查询不提供任何行/结果。但是当我在 MS Access 数据库上执行查询时,它会提供正确的结果。
查询是:
<i>select prnr.prk, prnr.prl, famk, faml from
(fzgpr inner join prnr on prnr.id = fzgpr.prid)
inner join prfamilie on prfamilie.id = prnr.famid
where ((fzgpr.fzgid) = 1) and ((FamL) like '*Air*')</i>
我尝试了不同的括号,但都没有奏效。我注意到,删除 where 子句的第二部分(和 ((FamL)...) 解决了这个问题,但我需要第二部分!!
我找不到错误,请帮助我,...
【问题讨论】:
在选择 oledb 时,您应该尝试将 '*' 替换为 '%' 好消息是您的数据库端正在工作;) 工作是让您的 .net 让他们说话... 【参考方案1】:我想说,如果你通过 OleDB 运行查询,你必须符合更多基于 SQL 的语法并使用((FamL) like '%Air%')
我在 Access 数据库上运行了一些应用程序(我的都是 2010 年的),这就是我使用的语法。我还使用 OleDB 对数据库进行所有读取访问。
【讨论】:
以上是关于无法从 .NET OleDB.DataReader 检索行的主要内容,如果未能解决你的问题,请参考以下文章
SendGrid 无法从传输连接读取数据:net_io_connectionclosed