我在SQL Server 2005 SP4中有一个表;其中一列将是XML数据类型。
问题是我的XML可以有三种不同的格式。 (即XML不相同,但最多可以有三种不同的格式)我想使用类型化的XML
问题a)我可以创建具有三种不同xml
的XML模式的XML模式集合我在adventureworks数据库,Production.ProductModel中看到一个表,其中catalogdescription列有三个不同的模式应用于它。
b)将从ASP.net webform生成XML;我应该在ASP.net中构建XML还是将所有表单数据放入SQL并在那里构建XML?
谢谢
答案 0 :(得分:1)
对于你的第一个问题 - 是的,你可以定义一个XML模式集合,它可以 - 正如“集合”所暗示的那样 - 包含多个XML模式:
-- First create an XML schema collection.
CREATE XML SCHEMA COLLECTION MySchemaCollection
AS '<schema .......> ...... </schema>'
-- Modify the collection.
ALTER XML SCHEMA COLLECTION MySchemaCollection
ADD '<schema ......> ...... </schema>'
这样,您可以为三种类型的XML数据定义三个单独的Schemat。
有关详细信息,请参阅MSDN文档Managing XML Schema Collections in SQL Server。
关于你的第二个问题:我猜想在你的ASP.NET应用程序中创建它并在生成它之后存储它可能更容易 - 否则你必须首先以某种关系形式存储数据(表)然后从那些生成XML。