怎么样根据XML文件内容,在数据库里面建立对应的表,并且把数据保存到表中

liuyanlei1990 2014-07-31 04:27:47
我做一个项目,就是根据传入的XML文件的内容,根据里面的节点创建对应的数据库表,而且把内容内容存入表中,也就是把XML内容转化成数据库表。用C#+SqlServer2008 不胜感激
...全文
634 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyanlei1990 2014-08-01
  • 打赏
  • 举报
回复
霜寒月冷 问题是各个字段要根据XML文件里面读取的。
liuyanlei1990 2014-08-01
  • 打赏
  • 举报
回复
<?xml version="1.0"?> <FileSetting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" TableName="T_recipients_list" CertificateName="领用单"> <DataRules> <DataRule ID="0003" PropertyName="Device_Count_Data" FileAddress="C3" /> <DataRule ID="0005" PropertyName="The_Issuer_Data" FileAddress="G3" /> <DataRule ID="0007" PropertyName="The_Signatory_Data" FileAddress="C4" /> <DataRule ID="0009" PropertyName="Date_Of_Issue_Data" FileAddress="G4" /> </DataRules> <OtherRules> <OtherRule ID="0001" PropertyName="Device_Name" FileAddress="A6" FirstSourceField="Device_Name" /> <OtherRule ID="0002" PropertyName="Device_Category" FileAddress="B6" FirstSourceField="Device_Category" /> <OtherRule ID="0003" PropertyName="Device_Type " FileAddress="C6" FirstSourceField="Device_Type " /> <OtherRule ID="0004" PropertyName="Asset_Number" FileAddress="D6" FirstSourceField="Asset_Number" /> <OtherRule ID="0005" PropertyName="Device_Model " FileAddress="E6" FirstSourceField="Device_Model " /> <OtherRule ID="0006" PropertyName="Serial_Number" FileAddress="F6" FirstSourceField="Serial_Number" /> <OtherRule ID="0007" PropertyName="Manufacture_Factory " FileAddress="G6" FirstSourceField="Manufacture_Factory " /> <OtherRule ID="0008" PropertyName="Storage_Site" FileAddress="H6" FirstSourceField="Storage_Site" /> <OtherRule ID="0009" PropertyName="Data_Table" FileAddress="A7:H8" FirstSourceField="Data_Table"/> <OtherRule ID="0010" PropertyName="Device_Count" FileAddress="B3" FirstSourceField="Device_Count" /> <OtherRule ID="0011" PropertyName="The_Issuer" FileAddress="F3" FirstSourceField="The_Issuer" /> <OtherRule ID="0012" PropertyName="The_Signatory" FileAddress="B4" FirstSourceField="The_Signatory" /> <OtherRule ID="0013" PropertyName="Date_Of_Issue" FileAddress="F4" FirstSourceField="Date_Of_Issue" /> </OtherRules> </FileSetting> 就是类似于这样的XML文件, 我要把它建立成相对应的表,然后存入数据库。最好写个框架代码。
霜寒月冷 2014-08-01
  • 打赏
  • 举报
回复
c#话的,可以 通过  DataSet 读取 xml 里面的内容。 然后转换到 DataTable 利用 for 循环把数据插入表中,而且插入数据比较灵活。lz不妨一试!
exception92 2014-08-01
  • 打赏
  • 举报
回复
使用linq to xml 读取你的xml文件,获取DataRule,OtherRule节点集合,循环集合获取它们的Attributes,通过name获取ID,PropertyName等字段,拼接创建数据表代码,执行sql。
--小F-- 2014-07-31
  • 打赏
  • 举报
回复
可以用存储过程解析XML 然后在C#中调用存储过程就可以了 OPENXML的用法 楼主自己去查一下吧
shixitong 2014-07-31
  • 打赏
  • 举报
回复
哪些节点为字段?哪些节点为表名?这个都需要定义一个规范 如果有这个规范了,就用程序解析这个xml,然后转换成相应的建表语句,最后把内容插入表中

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧