概要
XML 中表示的数据可以通过使用 XML 大容量装载组件加载到 Microsoft SQL Server 2000 数据库。 本文概述了您需要按照将 XML 数据加载到数据库中已存在一个表格的步骤。
注意 如果您使用 Microsoft SQL Server 2005,请参见 SQL Server 2005 联机丛书中的"XML 大容量加载示例"主题。
回到顶端
要求
若要使用该步骤需要此文章中: • 为 SQL Server 2000 (SQLXML),或更高版本 Web Release 1 的 XML。
所需预备知识: • XML 的知识。
回到顶端
创建表以接收数据
使用以下步骤创建一个表来接收该 XML 大容量装载组件处理的数据。 1. 创建一个名为 MyDatabase 在 SQL Server 中的数据库。
2. 打开 SQL 查询分析器,然后将该数据库更改为 MyDatabase 。
3. 通过在查询分析器中运行下列 SQL 语句在 MyDatabase 中创建 客户 表:
USE MyDatabase
Create TABLE Customer (
CustomerId INT PRIMARY KEY,
CompanyName NVARCHAR(20),
City NVARCHAR(20))
回到顶端
创建 XML 数据源文件
这是示例数据源代码。 将此 XML 粘贴到记事本中,,然后将该文件保存为 C:/Customers.xml。 <ROOT>
<Customers>
<CustomerId>1111</CustomerId>
<CompanyName>Sean Chai</CompanyName>
<City>NY</City>
</Customers>
<Customers>
<CustomerId>1112</CustomerId>
<CompanyName>Tom Johnston</CompanyName>
<City>LA</City>
</Customers>
<Customers>
<CustomerId>1113</CustomerId>
<CompanyName>Institute of Art</CompanyName>
</Customers>
</ROOT>
回到顶端
创建映射架构文件
此下一个文件是一个文件,用于将数据源 XML 的格式映射到数据库中的 客户 表的格式。 将此 XML 粘贴到记事本中,,然后将该文件保存为 C:/Customermapping.xml。 <?xml version="1.0" ?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:xml:datatypes"
xmlns:sql="urn:schemas-microsoft-com:xml-sql" >
<ElementType name="CustomerId" dt:type="int" />
<ElementType name="CompanyName" dt:type="string" />
<ElementType name="City" dt:type="string" />
<ElementType name="ROOT" sql:is-constant="1">
<element type="Customers" />
</ElementType>
<ElementType name="Customers" sql:relation="Customer">
<element type="CustomerId" sql:field="CustomerId" />
<element type="CompanyName" sql:field="CompanyName" />
<element type="City" sql:field="City" />
</ElementType>
</Schema>
回到顶端
创建一个 VBScript 程序来执行该 XML 大容量装载组件
这是使用 XML 大容量装载组件插入在"创建在 XML 数据源文件"中创建三个记录的脚本标题向您在"创建表以接收在数据"中创建的表中通过使用映射架构标题述"创建在映射架构文件"标题。 将此 VBScript 代码粘贴到记事本,然后再将该文件保存为 C:\Insertcustomers.vbs。 Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
objBL.ConnectionString = "provider=SQLOLEDB.1;data source=MySQLServer;database=MyDatabase;uid=MyAccount;pwd=MyPassword"
objBL.ErrorLogFile = "c:\error.log"
objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
Set objBL = Nothing
更正 ConnectionString 凭据在代码的第二行,以便该脚本可以使用您的 SQL Server 安装。 如果您不执行更正行 2,您执行该脚本后,会出现以下错误信息:
连接到数据源时出错
回到顶端
运行 VBScript 程序
运行 VBScript 程序 C:\Insertcustomers.vbs 将三个客户记录插入到 客户 表。
回到顶端
验证它正常工作
在 SQL 查询分析器,切换到 MyDatabase 数据库,然后再运行此查询: Select * FROM Customer
注意在"创建 XML 数据源文件"标题中创建的三个记录现在位于 客户 表。
回到顶端
其他技术
该 XML 大容量装载组件是能够: • 通过使用 XML 架构文件中指定关系的 XML 文档映射到倍数表。
• 正在生成大容量加载之前,表架构。
• 大容量加载从流中。
• 大容量溢出列中的加载。
XML 中表示的数据可以通过使用 XML 大容量装载组件加载到 Microsoft SQL Server 2000 数据库。 本文概述了您需要按照将 XML 数据加载到数据库中已存在一个表格的步骤。
注意 如果您使用 Microsoft SQL Server 2005,请参见 SQL Server 2005 联机丛书中的"XML 大容量加载示例"主题。
回到顶端
要求
若要使用该步骤需要此文章中: • 为 SQL Server 2000 (SQLXML),或更高版本 Web Release 1 的 XML。
所需预备知识: • XML 的知识。
回到顶端
创建表以接收数据
使用以下步骤创建一个表来接收该 XML 大容量装载组件处理的数据。 1. 创建一个名为 MyDatabase 在 SQL Server 中的数据库。
2. 打开 SQL 查询分析器,然后将该数据库更改为 MyDatabase 。
3. 通过在查询分析器中运行下列 SQL 语句在 MyDatabase 中创建 客户 表:
USE MyDatabase
Create TABLE Customer (
CustomerId INT PRIMARY KEY,
CompanyName NVARCHAR(20),
City NVARCHAR(20))
回到顶端
创建 XML 数据源文件
这是示例数据源代码。 将此 XML 粘贴到记事本中,,然后将该文件保存为 C:/Customers.xml。 <ROOT>
<Customers>
<CustomerId>1111</CustomerId>
<CompanyName>Sean Chai</CompanyName>
<City>NY</City>
</Customers>
<Customers>
<CustomerId>1112</CustomerId>
<CompanyName>Tom Johnston</CompanyName>
<City>LA</City>
</Customers>
<Customers>
<CustomerId>1113</CustomerId>
<CompanyName>Institute of Art</CompanyName>
</Customers>
</ROOT>
回到顶端
创建映射架构文件
此下一个文件是一个文件,用于将数据源 XML 的格式映射到数据库中的 客户 表的格式。 将此 XML 粘贴到记事本中,,然后将该文件保存为 C:/Customermapping.xml。 <?xml version="1.0" ?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:xml:datatypes"
xmlns:sql="urn:schemas-microsoft-com:xml-sql" >
<ElementType name="CustomerId" dt:type="int" />
<ElementType name="CompanyName" dt:type="string" />
<ElementType name="City" dt:type="string" />
<ElementType name="ROOT" sql:is-constant="1">
<element type="Customers" />
</ElementType>
<ElementType name="Customers" sql:relation="Customer">
<element type="CustomerId" sql:field="CustomerId" />
<element type="CompanyName" sql:field="CompanyName" />
<element type="City" sql:field="City" />
</ElementType>
</Schema>
回到顶端
创建一个 VBScript 程序来执行该 XML 大容量装载组件
这是使用 XML 大容量装载组件插入在"创建在 XML 数据源文件"中创建三个记录的脚本标题向您在"创建表以接收在数据"中创建的表中通过使用映射架构标题述"创建在映射架构文件"标题。 将此 VBScript 代码粘贴到记事本,然后再将该文件保存为 C:\Insertcustomers.vbs。 Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
objBL.ConnectionString = "provider=SQLOLEDB.1;data source=MySQLServer;database=MyDatabase;uid=MyAccount;pwd=MyPassword"
objBL.ErrorLogFile = "c:\error.log"
objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
Set objBL = Nothing
更正 ConnectionString 凭据在代码的第二行,以便该脚本可以使用您的 SQL Server 安装。 如果您不执行更正行 2,您执行该脚本后,会出现以下错误信息:
连接到数据源时出错
回到顶端
运行 VBScript 程序
运行 VBScript 程序 C:\Insertcustomers.vbs 将三个客户记录插入到 客户 表。
回到顶端
验证它正常工作
在 SQL 查询分析器,切换到 MyDatabase 数据库,然后再运行此查询: Select * FROM Customer
注意在"创建 XML 数据源文件"标题中创建的三个记录现在位于 客户 表。
回到顶端
其他技术
该 XML 大容量装载组件是能够: • 通过使用 XML 架构文件中指定关系的 XML 文档映射到倍数表。
• 正在生成大容量加载之前,表架构。
• 大容量加载从流中。
• 大容量溢出列中的加载。
浙公网安备 33010602011771号