我有一个复杂的 XSD 架构和数百个符合该架构的 XML 文件。
如何自动创建相关的 SQL Server 表来存储 XML 数据?
我考虑过使用 XSD 模式创建 C# 类xsd.exe工具,并让 Subsonic 之类的东西弄清楚如何从中创建一个闪亮的数据库,但不确定这是否是实现它的最佳方法。
有人成功地将 XSD 文件导入 SQL Server 吗?
一个类似的问题,有很好的答案:如何从 XSD 文件创建数据库表?
我建议您使用 SQL Server Integration Services,它随 SQL Server 2008 或 2005 一起提供(或者如果您坚持使用 2000,则使用数据转换服务)。
不幸的是,它没有附带免费的“Express”版本的 SQL Server,但是 SQL Server Developer 版本的价格不到 100 美元,它具有完整的 SQL Server Standard 功能并且可以满足您的需求。
SSIS 是一个很大的话题,我不会在这里详细介绍所有花哨的内容,但基本上是:
- 使用BIDS(Business Intelligence Development Studio,SSIS自带的Visual Studio的修改版)创建一个新的SSIS项目
- 将新的数据流任务拖到控制流表面上,然后单击数据流选项卡。
- 将“XML 源”从工具箱拖到数据流面板中,然后配置 XSD 和 XML 文件位置。
- 将 ADO.NET 数据目标从工具箱拖到数据流上,并将 XML 源的输出之一连接到 ADO.NET 目标的输入。如果您想基于 xml 模式的数据输出创建一个新表,而不是使用现有表,则在 ADO.NET 目标中指定连接管理器设置时单击“新建”,它会生成并执行相应的创建表陈述。对 XML 源的任何其他输出重复此操作(从架构生成的每个逻辑平面表都会有一个输出)。
在将数据加载到 SQL Server 之前,您很可能需要首先使用其他数据转换对象来转换数据,但这就是它的一般要点。如果您需要对大量 XML 文件运行该过程,您可以将该任务放入控制循环中并使用变量来设置 XML 文件位置。
有关在 SSIS 中使用 XML 源的 MS 文档位于此处:http://msdn.microsoft.com/en-us/library/ms140277(v=SQL.100).aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)