我有一个复杂的 XSD 架构和数百个符合该架构的 XML 文件。
如何自动创建相关 SQL Server 表来存储 XML 数据?
我考虑过使用 xsd.exe 工具从 XSD 模式创建 C# 类,并让 Subsonic 之类的东西弄清楚如何从中创建一个闪亮的数据库,但不确定这是否是实现它的最佳方法。
有人设法优雅地将 XSD 文件导入 SQL Server 吗?
一个类似的问题,有很好的答案:如何从 XSD 文件创建数据库表?
我建议您使用 SQL Server Integration Services,它随 SQL Server 2008 或 2005 一起提供(或者如果您坚持使用 2000,则使用数据转换服务)。
不幸的是,它没有附带免费的“Express”版本的 SQL Server,但是可以使用 SQL Server Developer 版本 < $100 which has the full SQL Server Standard functionality and would suit your needs.
SSIS 是一个很大的话题,我不会在这里详细介绍所有花哨的内容,但基本上是你:
在将数据加载到 SQL Server 之前,您很可能需要首先使用其他数据转换对象来转换数据,但这就是它的一般要点。如果您需要对大量 XML 文件运行该过程,您可以将该任务放入控制循环中并使用变量来设置 XML 文件位置。
有关在 SSIS 中使用 XML 源的 MS 文档位于:http://msdn.microsoft.com/en-us/library/ms140277(v=SQL.100).aspx
刚刚在 Sourceforge 上找到 XSD2DB ,根据该网站:
XSD2DB是一个编写的命令行工具 在 C# 中,这将读取 Microsoft ADO.NET 兼容的数据集架构文件 (XSD) 并生成数据库。
检查一下。
要将 XML 文件转换为数据库实体,您可以使用 Sonra Flexter 等工具,它可以有效地将 XML 数据转换为数据库就绪格式。 Flexter 使该过程自动化,使得生成表格和将 XML 数据导入数据库变得更加容易。有关 XML 转换器的详细指南以及将 XML 转换为数据库模式所涉及的步骤,您可以参考 Sonra 提供的综合资源。