SQL Server 是Microsoft 公司推出的关係型资料库管理系统。具有使用方便可伸缩性好与相关软体集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的伺服器等多种平台使用。
Microsoft SQL Server 是一个全面的资料库平台,使用集成的商业智慧型 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 资料库引擎为关係型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程式。
基本介绍
中文名sql server 资料库
外文名SQL Server
分类关係型资料库管理系统标準语言
公司美国Microsoft公司
概述
SQL Server 是一个关係资料库管理系统。它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNⅨ作业系统上的套用。
SQL Server 2000 是Microsoft 公司推出的SQL Server资料库管理系统,该版本继承了SQL Server 7.0 版本的优点,又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软体集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的伺服器等多种平台使用。
版本介绍
SQL Server 2000
SQL Server 2000 是Microsoft 公司推出的SQL Server 资料库管理系统,该版本继承了SQL Server 7.0 版本的优点,又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软体集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的伺服器等多种平台使用。
SQL Server 2005
Microsoft SQL Server 2005 是一个全面的资料库平台,使用集成的商业智慧型 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005资料库引擎为关係型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程式。
Microsoft SQL Server 2005 数据引擎是该企业数据管理解决方案的核心。 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据套用推向业务的各个领域。
与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 Microsoft SQL Server 2005 与众不同。无论您是开发人员、资料库管理员、信息工作者还是决策者,Microsoft SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。
SQL Server 2005 提供了5个不同版本
SQL Server 2005 Enterprise Edition(32 位和 64 位)——企业版
SQL Server 2005 Standard Edition(32 位和 64 位)——标準版SQL Server 2005 Standard Edition 是适合中小型企业的数据管理和分析平台。它包括电子商务、数据仓库和业务流解决方案所需的基本功能。Standard Edition 的集成商业智慧型和高可用性功能可以为企业提供支持其运营所需的基本功能。SQL Server 2005 Standard Edition 是需要全面的数据管理和分析平台的中小型企业的理想选择。
SQL Server 2005 Workgroup Edition(仅适用于 32 位)——工作组版对于那些需要在大小和用户数量上没有限制的资料库的小型企业,SQL Server 2005 Workgroup Edition 是理想的数据管理解决方案。SQL Server 2005 Workgroup Edition 可以用作前端 Web 伺服器,也可以用于部门或分支机构的运营。它包括 SQL Server 产品系列的核心资料库功能,并且可以轻鬆地升级至 SQL Server 2005 Standard Edition 或 SQL Server 2005 Enterprise Edition。SQL Server 2005 Workgroup Edition 是理想的入门级资料库,具有可靠、功能强大且易于管理的特点。
SQL Server 2005 Developer Edition(32 位和 64 位)——开发版SQL Server 2005 Developer Edition 允许开发人员在 SQL Server 顶部生成任何类型的应用程式。该应用程式包括 SQL Server 2005 Enterprise Edition 的所有功能,但许可用作开发和测试系统,而不用作生产伺服器。SQL Server 2005 Developer Edition 是独立软体供应商 (ISV)、谘询人员、系统集成商、解决方案供应商以及生成和测试应用程式的企业开发人员的理想选择。可以根据生产需要升级 SQL Server 2005 Developer Edition。
SQL Server 2005 Express Edition(仅适用于 32 位)——学习版SQL Server Express 资料库平台基于 SQL Server 2005。它也可以替换 Microsoft Desktop Engine (MSDE)。通过与 Microsoft Visual Studio 2005 集成,SQL Server Express 简化了功能丰富、存储安全且部署快速的数据驱动应用程式的开发过程。
SQL Server Express 是免费的,可以再分发(受制于协定),还可以充当客户端资料库以及基本伺服器资料库。SQL Server Express 是独立软体供应商 ISV、伺服器用户、非专业开发人员、Web 应用程式开发人员、网站主机和创建客户端应用程式的编程爱好者的理想选择。如果您需要使用更高级的资料库功能,则可以将 SQL Server Express 无缝升级到更複杂的 SQL Server 版本。
Microsoft SQL Server 2005 是用于大规模在线上事务处理 (OLTP)、数据仓库和电子商务套用的资料库平台;也是用于数据集成、分析和报表解决方案的商业智慧型平台。
SQL Server 2005 引入了一些“Studio”帮助实现开发和管理任务SQL Server Management Studio 和 Business Intelligence Development Studio。在 Management Studio 中,可以开发和管理 SQL Server 资料库引擎 与通知解决方案,管理已部署的 Analysis Services 解决方案,管理和运行 Integration Services 包,以及管理报表伺服器和 Reporting Services 报表与报表模型。在 BI Development Studio 中,可以使用以下项目来开发商业智慧型解决方案使用 Analysis Services 项目开发多维数据集、维度和挖掘结构;使用 Reporting Services 项目创建报表;使用报表模型项目定义报表的模型;使用 Integration Services 项目创建包。
使用资料库引擎创建用于在线上事务处理或在线上分析处理数据的关係资料库。这包括创建用于存储数据的表和用于查看、管理和保护数据安全的资料库对象(如索引、视图和存储过程)。可以使用 SQL Server Management Studio 管理资料库对象,使用 SQL Server Profiler 捕获伺服器事件。
複製是一组技术,用于在资料库间複製和分发数据和资料库对象,然后在资料库间进行同步操作以维持一致性。使用複製可以将数据通过区域网路、广域网、拨号连线、无线连线和 Internet 分发到不同位置以及分发给远程用户或移动用户。SQL Server 提供以下三种功能各不相同的複製类型事务複製、合併複製和快照複製。
事务複製通常用于需要高吞吐量的伺服器到伺服器方案(包括提高伸缩性和可用性、数据仓库和报告、集成多个站点的数据、集成异类数据以及卸载批处理)。合併複製主要为可能存在数据冲突的移动应用程式或分步式伺服器应用程式而设计的。常见套用场景包括与移动用户交换数据、POS(消费者销售点)应用程式以及集成来自多个站点的数据。快照複製用于为事务性複製和合併複製提供初始数据集;在适合数据完全刷新时也可以使用快照複製。利用这三种複製,SQL Server 提供功能强大且灵活的系统,以便使企业範围的数据同步。
Reporting Services
SQL Server 2005 Reporting Services (SSRS) 是基于伺服器的报表平台,提供来自关係和多维数据源的综合数据报表。Reporting Services 包含处理组件、一整套可用于创建和管理报表的工具和允许开发人员在自定义应用程式中集成和扩展数据和报表处理的应用程式编程接口 (API)。生成的报表可以基于 SQL Server、Analysis Services、Oracle 或任何 Microsoft .NET Framework 数据访问接口(如 ODBC 或 OLE DB)提供的关係数据或多维数据。
利用 Reporting Services,可以创建互动式报表、表格报表或自由格式报表,可以根据计画的时间间隔检索数据或在用户打开报表时按需检索数据。Reporting Services 还允许用户基于预定义模型创建即席报表,并且允许通过互动方式浏览模型中的数据。所有报表可以按桌面格式或面向 Web 的格式呈现。您可以从许多查看格式中进行选择,以数据操作或列印的首选格式按需呈现报表。
Notification Services 引擎与 SQL Server 资料库引擎协同工作。资料库引擎存储应用程式数据,并执行事件和订阅之间的匹配。Notification Services 引擎控制数据流和数据处理,并且可以扩展到多台计算机。这可以改进要求极高的应用程式的性能。
全文搜寻
SQL Server 包含对 SQL Server 表中基于纯字元的数据进行全文查询所需的功能。全文查询可以包括字词和短语,或者一个字词或短语的多种形式。使用全文搜寻可以快速、灵活地为存储在 Microsoft SQL Server 资料库中的文本数据的基于关键字的查询创建索引。在 SQL Server 2005 中,全文搜寻提供企业级搜寻功能。
使用全文搜寻可以在多个表的多个栏位中搜寻基于字元的纯文本数据。对大量非结构化的文本数据进行查询时,使用全文搜寻获得的性能优势会得到充分的表现。例如,对数百万行文本数据执行的 Transact-SQL LIKE 查询可能需要花费几分钟时间才能返回结果;但对同样的数据,全文查询只需要几秒或更少的时间,具体取决于返回的行数。可以对存储在 char、varchar 或 nvarchar 列中的数据或存储在 varbinary(max) 或 image 列中的格式化二进制数据(如 Microsoft Word 文档)创建全文搜寻。
Service Broker
SQL Server 2005 Service Broker 为讯息和伫列应用程式提供 SQL Server 资料库引擎本地支持。这使开发人员可以轻鬆地创建使用资料库引擎组件在完全不同的资料库之间进行通信的複杂应用程式。开发人员可以使用 Service Broker 轻鬆生成可靠的分散式应用程式。
使用 Service Broker 的应用程式开发人员无需编写複杂的内部通信和讯息,即可跨多个资料库分发数据工作负荷。由于 Service Broker 处理会话上下文中的通信路径,所以降低了开发和测试工作。还提高性能。例如,支持网站的前端资料库可以记录信息并将处理密集型任务传送到后端资料库以进行排队。Service Broker 确保在事务上下文中管理所有任务以确保可靠性和技术一致性。
SQL Server 2008
Microsoft SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的Microsoft SQL Server版本。这篇文章详细介绍了Microsoft SQL Server 2008中的新的特性、优点和功能。
在过去的Microsoft SQL Server 2005的基础之上,Microsoft SQL Server 2008做了以下方面的增强来扩展它的安全性
简单的数据加密
Microsoft SQL Server 2008可以对整个资料库、数据档案和日誌档案进行加密,而不需要改动应用程式。进行加密使公司可以满足遵守规范及其关注数据隐私的要求。简单的数据加密的好处包括使用任何範围或模糊查询搜寻加密的数据、加强数据安全性以防止未授权的用户访问、还有数据加密。这些可以在不改变已有的应用程式的情况下进行。microsoft sql server
外键管理
Microsoft SQL Server 2008为加密和密钥管理提供了一个全面的解决方案。为了满足不断发展的对数据中心的信息的更强安全性的需求,公司投资给供应商来管理公司内的安全密钥。Microsoft SQL Server 2008通过支持第三方密钥管理和硬体安全模组(HSM)产品为这个需求提供了很好的支持。
增强了审查
Microsoft SQL Server 2008使你可以审查你的数据的操作,从而提高了遵从性和安全性。审查不只包括对数据修改的所有信息,还包括关于什幺时候对数据进行读取的信息。Microsoft SQL Server 2008具有像伺服器中加强的审查的配置和管理这样的功能,这使得公司可以满足各种规范需求。Microsoft SQL Server 2008还可以定义每一个资料库的审查规范,所以审查配置可以为每一个资料库作单独的制定。为指定对象作审查配置使审查的执行性能更好,配置的灵活性也更高。
确保业务可持续性
改进了资料库镜像
Microsoft SQL Server 2008基于Microsoft SQL Server 2005,并提供了更可靠的加强了资料库镜像的平台。新的特性包括
· 页面自动修复。Microsoft SQL Server 2008通过请求获得一个从镜像合作机器上得到的出错页面的重新拷贝,使主要的和镜像的计算机可以透明的修複数据页面上的823和824错误。
· 提高了性能。Microsoft SQL Server 2008压缩了输出的日誌流,以便使资料库镜像所要求的网路频宽达到最小。
强大的审计功能
SQL Server 2008为我们带来了一些更强大的审计功能;或许其中最重要的一个就是变更数据捕获(CDC)。使用CDC,你能够捕获和记录发生在你资料库中的任意INSERT、UPDATE或DELETE等操作。一旦你为一个资料库启用了CDC功能,你可以对该资料库中的一个表进行跟蹤记录。SQL Server会记录对这些表进行修改的信息,并将其写到启用CDC功能的资料库的某些系统表中。当一个用户针对你的数据表运行INSERT、UPDATE或UPDATE操作时,相关操作事务和相关数据就会被记录下来。对于INSERT来说,插入的数值会被记录,而对于DELETE来说,被删除的值同样也会被记录。UPDATE的操作略微有点不同。更新前后的数据都会被记录。通过使用CDC功能,你不仅可以知道对数据进行了何种操作,你还可以恢复因误操作或错误的程式所造成的丢失数据。这是SQL Server非常强大的一个新增功能,它为数据审计提供了一个非常有用的功能,在此以前,我们一般要藉助于第三方工具来实现这一功能。
SQL Server2012
RTM发布
2012年3月7日讯息,微软于正式发布最新的SQL Server 2012 RTM(Release-to-Manufacturing)版本,面向公众的版本将于4月1日发布。微软此次版本发布的口号是“大数据”来替代“云”的概念,微软对SQL Server 2012的定位是帮助企业处理每年大量的数据(Z级别)增长。
来自微软商业平台事业部的副总裁Ted Kummert 称SQL Server 2012更加具备可伸缩性、更加可靠以及前所未有的高性能;而Power View为用户对数据的转换和勘探提供强大的互动操作能力,并协助做出正确的决策。即将推出三个主要版本和很多新特徵,微软也透露了SQL Server 2012的价格和版本计画,其中增加一个新的智慧型商业包。
SQL Server 2012主要版本包括新的商务智慧型版本,增加Power View数据查找工具和数据质量服务,企业版本则提高安全性可用性,以及从大数据到StreamInsight複杂事件处理,再到新的可视化数据和分析工具等,都将成为SQL Server 2012最终版本的一部分。
新功能
SQL Server 2012 对微软来说是一个重要产品。微软把自己定位为可用性和大数据领域的领头羊。
8.增强的 PowerShell 支持- 所有的 Windows 和 SQL Server 管理员都应该认真的学习 PowderShell 的技能。微软正在大力开发伺服器端产品对 PowerShell 的支持。
9.分散式回放(Distributed Replay)- 这个功能类似 Oracle 的 Real Application Testing 功能。不同的是 SQL Server 企业版自带了这个功能,而用 Oracle 的话,你还得额外购买这个功能。这个功能可以让你记录生产环境的工作状况,然后在一个环境重现这些工作状况。
10.PowerView- 这是一个强大的自主 BI 工具,可以让用户创建 BI 报告。
11.SQL Azure 增强- 这和 SQL Server 2012 没有直接关係,微软确实对 SQL Azure 做了一个关键改进,例如 Reporint Service,备份到 Windows Azure 。Azure 资料库的上限提高到了150G。
12.大数据支持- 这是最重要的一点,虽然放在了。 PASS(Professional Association for SQL Server)会议,微软宣布了与 Hadoop 的提供商 Cloudera 的合作。一是提供 Linux 版本的 SQL Server ODBC 驱动。主要的合作内容是微软开发 Hadoop 的连线器,也就是 SQL Server 也跨入了 NoSQL 领域。
系统要求
·支持的作业系统Windows 7、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Vista SP2
SQL Server 2014中最吸引人关注的特性就是记忆体线上事务处理(OLTP)引擎,项目代号为“Hekaton”。记忆体OLTP整合到SQL Server的核心资料库管理组件中,它不需要特殊的硬体或软体,就能够无缝整合现有的事务过程。一旦将表声明为记忆体最最佳化,那幺记忆体OLTP引擎就将在记忆体中管理表和保存数据。当它们需要其他表数据时,它们就可以使用查询访问数据。事实上,一个查询会引用记忆体最佳化表和常规表。
SQL Server 2014增强记忆体相关功能的另一个方面是允许将SQL Server记忆体缓冲池扩展到固态硬碟(SSD)或SSD阵列上。扩展缓冲池能够实现更快的分页速度,又降低了数据风险,因为只有整理过的页才会存储在SSD上。这一点对于支持繁重读负载的OLTP操作特别有好处。LSI Nytro快闪记忆体卡与最新SQL Server 2014协同工作,降低延迟、提高吞吐量和可靠性,消除IO瓶颈。
在SQL Server 2014中,列存储索引功能也得到更新。列存储索引最初是在SQL Server 2012引入的,目的是支持高度聚合数据仓库查询。基于xVelocity存储技术,这些索引以列的格式存储数据,又利用xVelocity的记忆体管理功能和高级压缩算法。,SQL Server 2012的列存储索引不能使用集群,也不能更新。
SQL Server 2014引入了另一种列存储索引,它既支持集群也支持更新。,它还支持更高效的数据压缩,允许将更多的数据保存到记忆体中,以减少昂贵的I/O操作。
2、云整合
微软一直将SQL Server 2014定位为混合云平台,这意味着SQL Server资料库更容易整合Windows Azure。例如,从SQL Server 2012 Cumulative Update 2开始,您就能够将资料库备份到Windows Azure BLOB存储服务上。SQL Server 2014引入了智慧型备份(Smart Backups)概念,其中SQL Server将自动决定要执行完全备份还是差异备份,以及何时执行备份。SQL Server 2014还允许将本地资料库的数据和日誌档案存储到Azure存储上。,SQL Server Management Studio提供了一个部署嚮导,它可以帮助您轻鬆地将现有本地资料库迁移到Azure虚拟机上。
SQL Server 2014还增加了一个功能,允许将Azure虚拟机作为一个Always On可用性组副本。可用性组(Availability Groups)特性最初在SQL Server 2012引入,提供了支持高可用性资料库的故障恢复服务。它由1个主副本和1~4个次副本(SQL Server 2014增加到8个)构成。主副本可以运行一个或多个资料库;次副本则包含多个资料库副本。Windows Azure基础架构服务支持在运行SQL Server的Azure虚拟机中使用可用性组。这意味着您用一个虚拟机作为次副本,然后支持自动故障恢复。
今天的Internet是一个令人激动的新世界,它具有鲜明的图像,实时的视频点播,高保真的语音和声音,以及诸如金融数据趋势和地理编码之类的複杂信息。通过集中管理文本、图像、音频、视频和地理信息,Oracle8i的interMedia使客户能够利用Web的多媒体特性。相比之下,Microsoft SQL Server 7.0对非传统的数据类型缺乏内置的支持。作为一种替代的策略,Microsoft提倡将非传统的数据存储到单独的伺服器里的平面(flat)档案中,然后使用OLE-DB将它们连结在一起。使用这种策略,集成在Web中发现的各种数据类型,将会产生複杂的、不安全的、维护量大的数据包(mess),这种数据包缺乏事物的完整性。
Process: Working Set SQL Server的该参数应该非常接近分配给SQL Server的记忆体值。在SQL Server设定中,如果将"set working set size"置为0,则Windows NT会决定SQL Server的工作集的大小。如果将"set working set size"置为1,则强制工作集大小为SQLServer的分配记忆体大小。一般情况下,最好不要改变"set working set size"的预设值。
多年来,SQL Server 一直被认为是一种客户机/伺服器系统。事实上,Sybase DataServer(以此为基础开发了原始的 SQL Server)正是第一个作为客户机/伺服器系统开发的商用关係资料库系统。那这又说明了什幺呢?这不只意味着 SQL Server 是一个双层系统。从传统上看,双层系统意味着客户机应用程式运行在一台机器上,向另一台计算机上的伺服器传送请求。而对于 SQL Server,客户机/伺服器意味着 SQL Server 的组成部分,即客户机 API 部分,驻留在处理结构中的远端,与伺服器组件本身是分开的。
三层系统也採用了同样的模型。多年以来,SQL Server 一直用在事务处理监视系统中,例如 BEA 的 Tuxedo 以及 Compaq 的 ACMSxp,这些系统早在二、三十年前就採用了典型的三层模型。三层模型在今天基于 Web 的套用系统中占据了支配地位,这类系统以 Microsoft 的 MTS 以及新的 COM+ 1.0 为代表。从 SQL Server 的角度看,三层解决方案中的客户机程式是放在中间层的。中间层直接与资料库互动。实际的桌面,或瘦客户机(Thin Client),使用其他机制并通常直接与中间层互动,而不是直接与资料库系统互动。
结构
从结构的角度看,SQL Server 关係伺服器组件本身并不真正关心客户机程式运行的位置。事实上,就 SQL Server 而言,即使在运行 SQL Server 的同一台机器上运行应用程式,仍然还是客户机/伺服器模型。伺服器运行一个单独的多执行绪进程,为来自客户机的请求提供服务,不管客户机的位置在哪里。客户机程式代码本身是单独的运行在客户机应用程式内部的 DLL,与 SQL Server 的实际接口是在客户机和伺服器之间对话的“表格数据流”(Tabular Data Stream,TDS) 协定。一个常见的问题是“什幺是 SQL Server 的本机接口呢?”很长时间以来,很多开发人员一直都不愿意使用 ODBC 这样的接口,因为他们认为由 Sybase 开发的客户机 API,也就是 DB-Library,是 SQL Server 的本机接口。实际上,SQL Server 关係伺服器本身并没有本机 API,它的接口就是在客户机和伺服器之间的通信流协定 TDS。TDS 把客户机传送给伺服器的 SQL 语句封装起来,也把伺服器返回给客户机的处理结果封装起来。任何直接处理 TDS 的 API 都是 SQL Server 的本机接口。
让我们来看一下客户机的组件,客户机结构中的某些部分就不在这里讨论了,因为它们不属于 SQL Server 的範畴。但如果您在编写应用程式的话,就必须了解这些部分。大家知道得最多的应该是各种对象模型,如果您正在编写 ASP 或 Microsoft Visual Basic(R)应用程式,就需要通过 ADO 与资料库系统互动,而不是直接调用底层的 API,例如 ODBC 或 OLE-DB。ADO 映射到 OLE-DB,而 RDO 映射到 ODBC。,作为这种最常用的编程模型的对象模型,并不是 SQL Server 客户机结构中的严格意义上的组件。,还有一些组件可以插接到 SQL Server 基础结构上面的这一层。OLE-DB 的“会话池服务提供程式 (Session Pooling Service Provider)”就是这种组件的一个例子。
接口
SQL Server 有两个接口可以认为是 SQL Server 7.0 的本机接口,即 OLE-DB 和 ODBC。DB-Library 接口也是本机的,它与 TDS 通信, DB-Library 使用的是 TDS 较老的版本,需要在伺服器上进行一些转换。现有的 DB-Library应用程式仍然可以继续与 SQL Server 7.0 协同使用,很多新的功能和性能提高等好处只能通过 ODBC 和 OLE DB 才能利用。更新 DB-Library 使其支持 SQL Server 7.0 的新能力,将会导致与现有应用程式的很多不兼容性,需要修改应用程式。ODBC 在五年之前就替代了 DB-Library,是新的 SQL Server应用程式更理想的 API,引入不兼容的 DB-Library 新版本并不明智。从图 2 可以看到,所有这些客户机 API 都有三个部分。最上面的部分实现 API 的细节,例如行集和游标应该是什幺样等等。TDS 格式化程式负责处理实际请求,例如 SQL 语句,并将其封装成 TDS 讯息包,传送给 SQL Server,获得返回的结果,然后再把结果反馈到接口实现。
除了我们在前面已经提到的局限性,即 DB-Library 仍然只能使用 SQL Server 6.5 版,TDS 协定对于所有 API 都是相同的。ODBC 和 OLE-DB 在与 SQL Server 7.0 通信时使用 SQL Server 7.0 版,但也能够与 6.5 或 6.0 伺服器通信。另一个是 Net-Library,这是一个抽象层,客户机和伺服器都在此层上同网路抽象接口通信,不必为 IPX 还是 TCP/IP 困扰。在这里我们将不讨论 Net-Library 的工作细节;只要知道它们的工作基本上是将来自的网路通信底层的细节隐藏起来不让软体的其他部分看到就可以了。
伺服器
前面已经提到过,客户机与 SQL Server 通信的主要方法就是通过使用 TDS 讯息。TDS 是一种简单协定。当 SQL Server 接收到一条讯息时,可以认为是发生了一个事件。,客户机在一个连线上传送登录讯息(或事件),并得到返回的成功或失败的回响。当您希望传送 SQL 语句时,客户机可以把 SQL 语言讯息打包传送给 SQL Server。,当您希望调用存储过程、系统过程或虚拟系统存储过程(我们后面还要详细讨论)时,客户机可以传送 RPC 讯息,这种讯息相当于 SQL Server 上的一个 RPC 事件。对于上面的后两种情况,伺服器会以数据令牌流的形式送回结果。Microsoft 没有把实际的 TDS 讯息写入文档中,因为这被认为是 SQL Server 组件之间的私用契约。
目录存储过程是另一类关键的客户机/伺服器的互动部分。这些存储过程在 ODBC 的 SQL Server 6.0 中出现,包括诸如 sp_tables 和 sp_columns 等存储过程。ODBC 和 OLE-DB API 定义了描述有关资料库对象的元数据的标準方法,这些标準需要适用于所有类型的 RDBMS 伺服器,而不必调整为 SQL Server 自己的系统表。不是客户机向伺服器传送对系统表的多个查询,并在客户机端建立标準的元数据视图,而是创建一组存储在伺服器上的系统存储过程,并对 API 返回适当格式的信息。这种方法使得通过一次通信就可以完成很多重要的元数据请求。为 ODBC 编写的过程已经写入文档,通常适合需要从系统表中获取信息但其他机制没有提供这种方法的情况。这使得Transact-SQL过程和 DB-Library应用程式可以访问元数据,而不需要编写对 SQL Server 系统表的複杂查询,并且使应用程式不受今后 Microsoft 修改系统表的影响。OLE DB 定义了一组架构行集,它们类似于 ODBC 的元数据,但又和它不同。它创建了一组新的目录存储过程,以更有效地为这些架构行集植入数据。,这组新的存储过程没有写入文档,因为这些存储过程重複了早先提供的功能。通过现有的若干种方法都可以得到元数据, SQL Server 开发组决定不显露这些并没有为编程模型增加新内容的对象。