Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过ADO.Net在Microsoft Access数据库上执行查询的速度较慢_C#_Ms Access_Ado.net_Odbc - Fatal编程技术网

C# 通过ADO.Net在Microsoft Access数据库上执行查询的速度较慢

C# 通过ADO.Net在Microsoft Access数据库上执行查询的速度较慢,c#,ms-access,ado.net,odbc,C#,Ms Access,Ado.net,Odbc,我在公司重新将C++层重新编译成C层。 SQL查询通过ODBC数据源在Microsoft Access数据库的层中执行。 数据库是一个.mdb文件,ODBC数据源使用以下驱动程序:Microsoft Access驱动程序(*.mdb) C++层使用Windows ODBC API通过ODBC数据源执行SQL查询。 例如,调用SQLExecDirect函数来执行SQL查询 C层使用ADO.Net OdbcConnection类通过ODBC数据源执行SQL查询 < >使用C++层时,几个SQL查询

我在公司重新将C++层重新编译成C层。 SQL查询通过ODBC数据源在Microsoft Access数据库的层中执行。
数据库是一个.mdb文件,ODBC数据源使用以下驱动程序:Microsoft Access驱动程序(*.mdb)

C++层使用Windows ODBC API通过ODBC数据源执行SQL查询。 例如,调用SQLExecDirect函数来执行SQL查询

C层使用ADO.Net OdbcConnection类通过ODBC数据源执行SQL查询

< >使用C++层时,几个SQL查询的执行时间不到1分钟。 使用C#层时,执行相同的SQL查询大约需要20分钟。
有人知道为什么在使用C#层时执行速度较慢吗


任何帮助都将不胜感激

我已经找到了使用C#层时查询执行缓慢的原因。

我忘记处理IDbCommand对象。

不,不应该。我们可以有一个显示这种行为的查询示例吗?您是否分析过这是一个数据访问问题(即不是后面的处理)?在使用MS access时,使用DAO(请注意这不是旧技术)通常比使用ADO快得多。