除了XML 技术之外,Microsoft SQL Server 2000 的开发者们也把通过HTTP 访问的特性(HTTP aclearcase/" target="_blank" >ccess9 作为SQL Server 2000 的一个核心特性。这样用户完全可以把SQL Server 放到一个URL 上了,从而保证开发人员和潜在的最终用户都能简单地通过一个URL 来访问SQL Server。 本节我们主要介绍以下三个问题:
在使用HTTP 访问SQL Server 2000 数据库前必须首先利用IIS 专门为SQL Server 提供的虚拟目录管理器来创建虚拟目录(virtual directory), 同时确保使用的操作系统支持IIS 服务器。创建虚拟目录其主要目的就是在SQL Server 实例与新创建的虚拟目录之间建立新的连接。下面以一个具体的例子来介绍创建虚拟目录要执行哪些步骤。 (1) 在SQL Server Tool 程序单中选择Configure SQL XML Support in IIS 选项。 (2) 打开要创建虚拟目录的服务器图标,然后选择管理站点图标。右击该图标在弹出菜单中选择New ,单击Virtual Directory。 (3) 选中General 标签页,如图20-3 所示。 (4) 该标签页用来给出HTTP 存取数据库数据时所要使用的虚拟目录以及虚拟目录的真实目录的路径。真实目录主要存放通过该虚拟目录要访问的文件,此外模板文件(template files) 和注释匹配模式文件(annotated mapping schema files) 也存储在该目录。在该例中我们在Virtual Directory Name 中输入VirtualRoot; 在Local Path 中输入 E:\Inetpub\wwwroot\ VirtualRoot。 (5) 选中Security 标签页,如图20-4 所示。 该标签页用来定义登录的认证方法,共在三种IIS 认证模式。
(7) 选中Setting 标签页,如图20-6 所示。 Setting 标签页用来确定将使用何种SQL Server 2000 访问类型来通过虚拟目录进行数据访问。应该指出模板(Template) 文件和模式(Schema) 文件可以存储在任何地方。
该标签页主要用来定义虚拟名称。在URL 中只能使用虚拟名称,基于安全考虑,任何关于执行的对象以及文件的存储位置等信息都被隐藏。
Advanced 标签页主要是用来指定sqlisapi.dll 存放的位置,通过虚拟目录访问 SQL Server 2000 实体时需要使用该文件。如果虚拟目录被创建于远程服务器上,则必须提供存放位置。在缺省情况下sqlisapi.dll 文件被安装于Files\Common Files\System\Ole DB 目录下。 20.4.2 HTTP 的访问能力 在SQL Server 2000 中,HTTP 的访问能力得到了明显的提高用户,不仅可以在 URL 中直接输入SQL 语句或存储过程,而且能够在URL 中加入模板文件或进行 XPath 查询。在详细介绍这些访问方法之前首先让读者了解HTTP 的语法。 3 在URL 中使用模板 虽然在URL 中直接执行SQL 语句有着简单、快速的优点,但是目前这种方式在大部分互联网环境中都是不合适的。因为开发者不会希望用户书写或是看到SQL 语句,因为这可能泄露访问开发者数据库的内部机制。出于安全原因,开发者显然不会希望这样。因此对于开发人员来说更好的选择就是允许通过URL 来访问指定服务器端的XML 模板。这虽然提供了对SQL Server 的直接访问但是实际已把SQL Select 语句或XPath 查询请求隐藏在了XML 模板中。因此许多中间层代码的使用和数据库交互过程就不必要了。以此方法,可以简便快速地把数据库放置到网络上。这也是SQL Server 为开发人员提供的一种更快捷地跟上市场需要的方法。 |