6

使用典型系统之一 ODBC、OLEDB 或 ADO.NET 与 SQL Server 数据库通信时,底层基本协议是否相同?这些系统之间的所有差异基本上只是客户端问题吗?

这只是 TDS(表格数据流)传输的不同风格吗?

[MS-TDS]:表格数据流协议规范

还是有实际不同的方式与数据库服务器通信,并且这些协议之间存在根本区别?

4

1 回答 1

11

ODBC、OLE DB 和 ADO.NET 是用于与数据库通信的不同 API/框架。例如,ADO 以连接方式处理数据,主要使用服务器端游标,而 ADO.NET 以非连接方式运行,快速从服务器拉取数据并将其缓存在客户端的 ADO.NET 数据集对象中。

在底层,每一个都通过 TDS 向 SQL Server 发送 SQL 命令,并通过 TDS 接收回数据。OLE DB 允许您接近 TDS 以提高性能,而 ODBC 进行了很多抽象,以便为许多不同的数据源提供一致的接口。

于 2008-11-27T04:04:29.247 回答