分享
 
 
 

使用用于 SQL Server 的 IIS 虚拟目录管理实用工具

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

使用用于 SQL Server 的 IIS 虚拟目录管理实用工具

在使用 HTTP 访问 Microsoft? SQL Server? 2000 数据库之前,必须安装适当的虚拟目录。在运行 Microsoft Internet 信息服务 (IIS) 的

计算机上,使用用于 SQL Server 的 IIS 虚拟目录管理实用工具(在"SQL Server 工具"程序组中单击"在 IIS 中配置 SQL XML 支持")定义

并注册新的虚拟目录,即所谓的虚拟根。该实用工具指示 IIS 在新的虚拟目录和 Microsoft SQL Server 实例之间创建关联。有关该实用工具

用户界面的信息,请参见 IIS 虚拟目录管理实用工具。

必须将 IIS 服务器和虚拟目录的名称指定为 URL 的一部分。虚拟目录(包括登录、密码和访问权限)中的信息用于建立与特定数据库的连接

并执行查询。

可以指定 URL:

直接访问数据库对象,例如表。

在这种情况下,URL 将包括 dbobject 类型的虚拟名称。

执行模板文件。

模板是由一个或多个 SQL 语句组成的有效的 XML 文档。在 URL 中指定模板文件时,将执行存储在模板文件中的 SQL 命令。可以直接在 URL

中指定 SQL 查询,但考虑到安全性,不建议这样做。

执行 XPath 查询。

对指定作为 URL 一部分的带批注的映射架构文件执行 XPath 查询。

虚拟名

若要使模板文件、映射架构文件或数据库对象(如表或视图)成为 URL 的一部分,必须创建 template、schema 和 dbobject 类型的虚拟名称

。将虚拟名称指定为 URL 的一部分,以便执行模板文件、对映射架构文件执行 XPath 查询或直接访问数据库。

在 URL 中指定的虚拟名称类型(template、schema、dbobject)还用于决定在 URL 中指定的文件类型(模板文件或映射架构文件)。例如,

下面的 URL 使用模板访问 SQL Server 数据库:

http://IISServer/nwind/TemplateVirtualName/Template.xml

TemplateVirtualName 是 template 类型的虚拟名称,用于标识指定的文件 (Template.xml) 是模板文件。

创建 nwind 虚拟目录

新增信息 - SQL Server 2000 SP3。

下例创建 nwind 虚拟目录。在大多数用于说明 Microsoft? SQL Server? 2000 的 URL 访问的示例中,都使用 nwind 虚拟目录。

在创建 nwind 虚拟目录之前,需要一个与将要创建的虚拟目录相关联的物理目录(例如,C:\Inetpub\Wwwroot\nwind,此处 nwind 是与将要

在以下过程中创建的 nwind 虚拟目录相关联的物理目录)。

还需要在与该虚拟目录相关联的物理目录下创建两个子目录(例如,C:\Inetpub\Wwwroot\nwind\template 和

C:\Inetpub\Wwwroot\nwind\schema)。这些是与 template 和 schema 类型的虚拟名称相关联的目录,这两种类型的目录是作为创建 nwind

虚拟目录的一部分而创建的。

创建 nwind 虚拟目录

在 Microsoft SQL Server 程序组中,单击"在 IIS 中配置 SQL XML 支持"。

展开服务器,然后单击想要的 Web 站点。

在"操作"菜单上指向"新建"子菜单,然后单击"虚拟目录"命令。新虚拟目录的属性页将显示在屏幕上。

在"新的虚拟目录属性"对话框的"常规"选项卡上,输入虚拟目录的名称。对于本例,键入 nwind 和物理目录路径(例如

C:\Inetpub\Wwwroot\nwind,假设在 C:\Inetpub\Wwwroot 目录中已创建了 nwind 子目录)。或者可以使用"浏览"按钮选择目录。

在"安全"选项卡上,选择"SQL Server"和"使用 Windows 集成身份验证"。

在"数据源"选项卡上,在"SQL Server"框中输入服务器的名称,例如 (local);如果在指定的计算机上安装了多个实例,则输入 SQL Server

2000 实例的名称(可选)。在"数据库"框中,输入 Northwind 作为默认数据库的名称。

在"设置"选项卡上,选择"允许 URL 查询"、"允许模板查询"、"允许 XPath"和"允许 POST"选项。

在"虚拟名称"选项卡上,单击"新建"按钮以创建模板类型的虚拟名称。

在"虚拟名称配置"对话框中:

在"虚拟名称"框内输入

template(可以是用户指定的任意名称)。在"类型"列表中,选择"模板"。输入路径(例如,C:\Inetpub\Wwwroot\nwind\template,假设与虚

拟目录相关联的物理目录下有一个子目录 template,但并不检查该目录是否存在)。单击"保存"按钮保存虚拟名称。

在"虚拟名称"选项卡上,单击"新建"按钮以创建架构类型的虚拟名称。

在"虚拟名称"框内输入

schema(可以是用户指定的任意名称)。在"类型"列表中,选择"架构"。输入路径(例如,C:\Inetpub\Wwwroot\nwind\schema,假设与虚拟目

录相关联的物理目录下有一个子目录 schema)。单击"保存"按钮保存虚拟名称。

在"虚拟名称"选项卡上,单击"新建"按钮以创建模板和架构类型的虚拟名称。

在"虚拟名称"框内输入 dbobject(可以是用户指定的任意名称)。在"类型"列表中,选择 dbobject。单击"保存"按钮保存虚拟名称。

单击"确定"按钮保存设置。

这就创建了虚拟目录 nwind。默认情况下,使用该虚拟目录对 Northwind 数据库执行指定的查询。

若要测试虚拟目录,请在浏览器中键入:/nwind?sql=SELECT"http://<IISServer>/nwind?sql=SELECT * FROM Employees FOR XML AUTO&root=root 并按 ENTER 键

使用 HTTP 访问 SQL Server

新增信息 - SQL Server 2000 SP3。

可以使用 HTTP 访问 Microsoft? SQL Server? 2000。有关 SQL ISAPI 扩展所支持的 URL 语法的更多信息,请参见 URL Access。在可以使用

HTTP 指定查询前,必须先用用于 SQL Server 的 IIS 虚拟目录管理实用工具创建一个虚拟根。有关更多信息,请参见创建 nwind 虚拟目录。

SQL Server 的 HTTP 访问能力使您得以:

直接在 URL 中指定 SQL 查询,例如:

http://IISServer/nwind?sql=SELECT+*+FROM+Customers+FOR+XML+AUTO&root=root

指定 FOR XML 子句以 XML 文档而不是标准行集的形式返回结果。根参数可标识单一的顶层元素。

直接在 URL 中指定模板。

模板是包含一个或多个 SQL 语句的有效的 XML 文档。模板使您得以将数据放在一起以形成有效的 XML 文档,但直接在 URL 中指定查询时不

一定是这样。例如:

SELECT+*+FROM+Customers+FOR+XM'http://IISServer/nwind?template=<ROOT+xmlns:sql="urn:schemas-microsoft-com:xml-sql"><sql:query>SELECT+*+FROM+Customers+FOR+XM

L+AUTO</sql:query></ROOT>

在 URL 中指定模板文件。

在 URL 中写入长 SQL 查询会很麻烦。此外,浏览器对在 URL 中可以输入的文本量可能有限制。若要避免这些问题,可以编写模板并将其存储

在文件中。模板是包含一个或多个 SQL 语句和 XPath 查询的有效的 XML 文档。可以在 URL 中直接指定模板文件,例如:

http://IISServer/nwind/TemplateVirtualName/templatefile.xml

在 URL 中,TemplateVirtualName 是使用用于 SQL Server 的 IIS 虚拟目录管理实用工具创建的 template 类型的虚拟名称。

模板文件还删除来自用户的数据库查询的详细信息以增强安全性。通过将模板文件存储在注册数据库时所在的虚拟根目录(或其子目录)中,

删除虚拟根上的 URL 查询处理服务并只允许 SQL Server XML ISAPI 处理文件及返回结果集,从而加强了安全性。

指定在带批注的 XML 数据简化 (XDR) 架构(也称为映射架构)上执行的 XPath 查询。

从概念上讲,对映射架构编写 XPath 查询与使用 CREATE VIEW 语句创建视图并对视图编写 SQL 查询相似,例如:

http://IISServer/nwind/SchemaVirtualName/schemafile.xml/Customer[@CustomerID="ALFKI"]

在这个 URL 中:

SchemaVirtualName 是使用用于 SQL Server 的 IIS 虚拟目录管理实用工具创建的 schema 类型的虚拟名称。

Customer[@CustomerID="ALFKI"] 是在该 URL 中指定的 schemafile.xml 上执行的 Xpath 查询。

直接在 URL 中指定数据库对象。

可以将数据库对象(如表和视图)指定为 URL 的一部分,并对数据库对象指定 Xpath 查询,例如:

http://IISServer/nwind/dbobjectVirtualName/XpathQuery

在这个 URL 中,dbobjectVirtualName 是使用用于 SQL Server 的 IIS 虚拟目录管理实用工具创建的 dbobject 类型的虚拟名称。

说明 当在 URL 中执行需要资源(如内存)的操作(创建临时表和临时存储过程、声明游标、执行sp_xml_preparedocument 等等)时,必须

执行适当的相应命令(如 DROP TABLE、DROP PROCEDURE、DEALLOCATE 游标或 EXECUTE sp_xml_removedocument)以释放资源。

XML 文档和文档片段

当用 root 参数执行模板或查询时,结果是有单个顶层元素的完整 XML 文档。例如,下列 URL 执行模板:

http://IISServer/VirtualRoot/TemplateVirutalName/MyTemplate.xml

下面是一个示例模板文件 (MyTemplate.xml):

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">

<sql:query>

SELECT *

FROM Customers

FOR XML AUTO

</sql:query>

</ROOT>

模板中的 <ROOT> 标记为结果 XML 文档提供了单个的顶层元素。

可以直接在 URL 中指定查询。在此例中,root 参数指定返回文档中的顶层元素:

http://IISServer/VirtualRoot?sql=SELECT * FROM Customers FOR XML AUTO&root=root

如果在写上述查询时不使用 root 参数,将返回一个 XML 文档片段(即缺少单个顶层元素的 XML 文档)。 该片段没有标题信息。例如,下列

URL 将返回文档片段:

http://IISServer/VirtualRoot?sql=SELECT * FROM Customers FOR XML AUTO

当请求一个 XML 文档时,将返回用以标识文档编码类型的字节顺序标记。字节顺序标记是用以标识 XML 文档编码类型的标准字节顺序。XML

分析器使用该字节顺序标记确定文档编码类型(如 Unicode)。例如,字节顺序标记"oxff, 0xfe"将文档标识为 Unicode。默认情况下,分析

器假设 UTF-8 为文档编码类型。

当请求 XML 片段时将不返回字节顺序标记,因为字节顺序标记属于 XML 文档标题,而 XML 片段中没有标题。

安全说明 Microsoft SQLXML Web 发行版增强了对此 XML 功能的支持。要使用最新的增强功能,请从 Microsoft Web 站点安装 Microsoft

SQLXML 3.0 Service Pack 1。此 Service Pack 附带的文档提供了开发应用程序时应考虑的安全事项的信息。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有