先感谢各位。
问题如下
中的 
sql native client 与sql server 区别是什么?

解决方案 »

  1.   

    http://ms.itpub.net/redirect.php?fid=40&tid=1159563&goto=nextnewset
      

  2.   

    http://blogs.leoworks.net/jinglecat/post/SQL-Server-Native-Client.aspxSQL Server Team Blog 以及 MSDN 多个地方都是这样描述 SQL Server Native Client 的:Microsoft SQL Server Native Client (SQL Native Client) is a single native dynamic link library (DLL) that contains the ODBC driver and OLE DB provider which together support applications using native-code APIs (ODBC, OLE DB and ADO) to access Microsoft SQL Server. SQL Native Client is a component of SQL Server 2005 and is serviced in SQL Server 2005 service packs. It is also available for download from MSDN (http://msdn.microsoft.com/data/ref/sqlnative/default.aspx). In SQL Native Client, everything (APIs, TDS routines and netlibs) is packaged into a single DLL.Previously ODBC and OLE DB support for SQL Server was provided via Microsoft Data Access Components (MDAC - http://msdn.microsoft.com/data/ref/mdac/). MDAC is now fully integrated into Windows and is available only in Windows releases and service packs – there will be no more standalone MDAC downloads on MSDN. MDAC continues to provide core data access functionality such as the ODBC Driver Manager and OLE DB Core Services, but the ODBC and OLE DB support for SQL Server is frozen at the level of functionality provided by SQL Server 2000. Note that SQL Native Client supports SQL Server releases from SQL Server 7.0 onwards, so its use is not restricted to SQL Server 2005. However, new features such as MARS (http://msdn2.microsoft.com/en-us/library/ms131686.aspx) are only available when connected to SQL Server 2005. 基本上就是说 Sqlncli (你会在很多地方发现微软用缩写 Sqlncli 来表示 SQL Server Native Client) 是一个包含 ODBC 驱动与 OleDb 提供程序的单一本机DLL,可在应用程序中用本机代码调用这些 API(包括ODBC,OleDb以及ADO)来访问 SQL。之前的支持 SQL 的 ODBC 与 OLE DB 都是包含在 MDAC 中(最新更新到 Windows 2003 的 2.8 SP1),MDAC 现在被完全继承到 Windows (名为 WDAC,Windows Data Access Components ,从 Windows 6.0 即 Vista 开始)中,并且只能随 Windows 安装或者其SP,也就说没有独立的 MDAC (即WDAC) 可用。MDAC 依然提供诸如 ODBC 驱动管理,OLE DB 核心服务等核心数据访问功能,但针对 SQL 的 ODBC 与 OLE DB 支被冻结在SQL 2k(也就说,即使你连接的是 SQL 2k5,也只能通过 MDAC 来访问 SQL 2k 中已存在的功能,而无法访问 2k5 开始新增的特性)。Sqlncli 在 Sql 2005 中开始引入,但 Sqlncli 支持之前版本的,包括 Sql 7.0 与 Sql 2k。然而,特定于 Sql 2k5 的特性(如 MARS)只有连接的是 Sql 2k5 才可用。 也就说,sqlncli 是从原来的 MDAC 剥离出来的,单独支持 SQL 的访问库,而 MDAC 中对 SQL 的支持不再更新(冻结到 2k)。此外 MDAC(WDAC)现在作为 Windows 的一个组件,容易引起安装版本问题,因此独立安装包 sqlncli,更容易升级更新。 另一个容易困惑的问题是:sqlncli 与 ADO.NET 中 SqlClient (System.Data.SlqClient 命门空间)的关系。这个答案在于 sqlncli 中的 Native。一看到 Native,我们就可以很快的想到对应的 Managed(其实我一开始没有想到这点,google 很多才恍然大悟)。SqlClient 就是 Managed 的。也就说,sqlncli 是给本机应用程序用的,这些程序一般是C,C++,VC++(这里指VC++.NET以后没用 CLI,而是MFC,ATL之类)编的,SqlClient 是给.NET应用程序用的。SqlClient 内部直接使用微软没有公开的 TDS 协议来访问 SQL。但在 .NET 1.x 的时候,SqlClient 仍然需要 MDAC。从 .NET 2.0 开始,SqlClient 就不需要 MDAC 了, 当然也不需要 sqlncli。但是,如果在.NET中用 OleDb Provider 来访问 SQL(当然不建议),仍然需要MDAC。 注:native 与 managed 实际上先有 managed 的叫法,这个开始于 .NET 平台的出现。在 windows 平台上,managed (托管)就是指的的运行在 .NET  上的一切东东。managed code 指用 .NET 语言,如VC#,VB.NET,VC++.NET/CLI,编写的代码,managed application 就是用 managed code 开发的程序,如 asp.net 程序。而在 .NET 平台引入之前的代码,都是直接编译成为二进制的机器语言,这些叫做 native,一般用 C,C++,VC++,VB6.0都是,以及 COM/DCOM等。
      

  3.   

    sql native client 与sql server 区别是什么?版本的区别sql native client对应sqlserver2005sql server对应sqlserver2000(或以下)