2013-10-10 74 views
7

数据库中的驱动程序和提供程序有什么区别?是否有任何解释将不胜感激。驱动程序和提供程序之间的区别

样品:ADO.NET driver for MySQL VS providerName="System.Data.EntityClient"

+0

同一问题? http://stackoverflow.com/questions/5429026/ –

回答

6

从MSDN论坛:

驱动器被安装在工作站或服务器上的程序;它允许程序与数据库管理系统(DBMS)交互。例如,JDBC驱动程序通过J2EE中提供的标准JDBC应用程序接口(API)提供数据库连接。

数据提供者是一组用于与数据源进行通信的库。如SQL的SQL数据提供者,Oracle的Oracle数据提供者,OLE DB数据访问提供者,excel和MySQL。它充当应用程序和数据源之间的桥梁,用于从数据源中检索数据并将对该数据的更改与数据源进行协调。

来源:MSDN-Forum

+0

还不太清楚。让我给你一个可能让事情更清楚的场景。机器A安装了少数数据库的SQL Server。机器B已经安装了SSMS,借助它我们可以看到数据库内容。在机器C上,有一个.Net EXE正在运行,它与安装在机器A上的数据库连接并使用C#ADO .Net类写入其表中。现在可以详细说明所有机器数据库驱动程序的安装以及所有机器数据库提供程序的安装情况。 – RBT

+0

说数据提供者(一组* .dll文件)最终使用数据库驱动程序与数据库进行CRUD操作交互是否正确? – RBT

+1

@RBT,或许[维基百科](https://en.wikipedia.org/wiki/Open_Database_Connectivity#Drivers)的引用会有帮助:“一个OLE DB-ODBC桥包含一个OLE DB提供程序,它使用ODBC驱动程序连接到目标数据库。该提供程序将OLE DB方法调用转换为ODBC函数调用。“ – HeyJude

-3

提供商是如SQL服务器,Oracle特定数据库连通性,但我们进口的命名空间像using system.data.msdaorausing system.data.sqlclient

写入连接类后,需要字符串连接字符串需要4个语句uid,pwd,数据库,服务器。

通过使用cn.Open方法打开连接后。

执行语句后。

连接关闭后。

相关问题