Sql OLE和Access在语法上有区别吗
今天早上,我遇到了一个到处都找不到答案的问题,所以现在我只想问那些在这个问题上可能比我有更多知识的人;。问题是,当我在MS Access中执行某个查询时,我得到了我希望接收的行,没有问题。但是,当我在OleDbCommand对象中运行完全相同的命令“复制粘贴”时,它不会返回任何内容。我的数据表是空的。我将复制查询,以便您发现我可能不知道的语法差异:Sql OLE和Access在语法上有区别吗,sql,vb.net,ms-access,oledb,oledbcommand,Sql,Vb.net,Ms Access,Oledb,Oledbcommand,今天早上,我遇到了一个到处都找不到答案的问题,所以现在我只想问那些在这个问题上可能比我有更多知识的人;。问题是,当我在MS Access中执行某个查询时,我得到了我希望接收的行,没有问题。但是,当我在OleDbCommand对象中运行完全相同的命令“复制粘贴”时,它不会返回任何内容。我的数据表是空的。我将复制查询,以便您发现我可能不知道的语法差异: odbCommand = New OleDbCommand( _ "SELECT IDTemps, NomEmploye, HreAllou
odbCommand = New OleDbCommand( _
"SELECT IDTemps, NomEmploye, HreAllouees, HreReelles, TauxHoraire, " & _
" Description, NoProjet_Short, NoJob, Type FROM TableA " & _
" WHERE NoProjet_Short = '13015' " & _
" AND Type = 'DessinE' ", odbConnection)
dbAdapter = New OleDbDataAdapter(odbCommand)
odbConnection.Open()
dbAdapter.Fill(dtTable)
注意:这是代码的核心,没有粘贴错误管理,因为我没有错误,我的数据表只是空的,不应该是空的
谢谢
Simon好的,经过一整天的测试,我的查询中出现了许多不同的数据、表配置和更改,我终于找到了问题的答案。Steve在这一次实际数据库测试中帮了我很大的忙,他向我展示了通往圣杯的路径:该死的连接字符串 我的连接字符串实际上很好,但我有很多,我在VB.NET应用程序中指向的数据库不是我使用MS Access修改的数据库
最后一句话:始终仔细检查连接字符串和thx Steve:你确定NoProjet\u Short是一个文本数据字段吗?@Steve是的NoProjet\u Short字段是数据库中的一个文本字段。你能检查连接吗?您是否可能正在使用不同的access文件?注意项目工作文件夹中的数据库文件和bin\debug中的数据库directory@Steve连接字符串指向正确的数据库。早些时候,我正在对这个命令执行另一个查询,但我不得不更改它,现在我发布的那个查询不起作用。这就是为什么对我来说,它指出了Ole处理查询和访问的方式之间的差异。就像Access和SQL Server语法差异一样。可能,但不适用于此查询。它是一个基本的选择,没有任何只有Access才能解释的奇特构造。它应该按原样工作。另一个选项是在where条件下,没有需要值的记录,但我想您已经检查过了