【发布时间】:2015-07-13 15:05:30
【问题描述】:
我有一个 XML 文件,我想使用 .NET 将它加载到关系数据库 (SQL Server 2008 R2) 中(我可以选择任何框架)。我知道最简单的方法是通过SQLXML Bulk Loader。
使用批量加载器,是否可以将 XML 数据从单个元素解析为多个列。
例如,给定:
<vuln:product>cpe:/a:magpierss:7.1</vuln:product>
是否可以解析 XML,使“magpierss”在一个数据库表列中结束,而“7.1”在另一列中?
其次,某些元素具有一组有限的值(枚举)。
例如
<favoriteColor>red</favoriteColor>
<favoriteColor>blue</favoriteColor>
我想用我在不同数据库表中定义的枚举值替换所述元素数据(即“红色”-> 0、“蓝色”-> 1 或“绿色”-> 2)。而不是一遍又一遍地加载实际的字符串值。
使用 SQLXML 批量加载器可以实现这两件事吗?如果没有,我有什么选择?
【问题讨论】:
标签: .net xml sql-server-2008-r2 xml-parsing sqlxml