Xml2OleDb简介

XML是互联网共享数据的最好的方法,XML格式的数据可以很轻松的集成到不同的Web应用中去。但如果你想将XML文件插入到数据库,怎么办?Xml2OleDb将向您说明往OleDb数据库,比如SQL Server, Access, Excel, Visual FoxPro, FoxPro, and dBase等插入XML文件的数据是如何轻松。

首先,将XML文件装载进DataSet,并得到第一个表,这个表就是我们要加入到数据库的DataTable;接下来,去除XML文件的扩展名,文件名字去掉扩展名将是我们数据库中使用的表名。如果XML格式不准确,将会报告错误,源代码中有XML文件格式的例子。参见Authors.xml

// 装载我们提交的XML文件到DataSet

dataSetXml.ReadXml(HttpContext.Current.Server.MapPath(textBoxXml.Text));

// 得到DataSet中的第一个表

dataTableXml = dataSetXml.Tables[0];

// 生成表名

tableName = textBoxXml.Text.Substring(0,textBoxXml.Text.Length -4);

一旦XML装载成功,首先检查数据表是否有数据(rows),接下来检查数据库是否存在表,如果不存在就创建一个;然后将数据从XML插入到数据库中。

// 检查是否有数据存在(rows)

if(dataTableXml.Rows.Count > 0)

创建数据库表

创建数据库连接,得到我们要添加表的数据库架构信息。

// 创建数据库连接,打开数据库,得到数据库表的架构信息

OleDbConnection oledbConn = new OleDbConnection(textBoxOleDb.Text);

oledbConn.Open();

DataTable schemaTable =

oledbConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,

new object[] {null, null, tableName, "TABLE"});

// 检查表是否存在,如果存在在DataTable中将有一条记录

if(schemaTable.Rows.Count <1)

sqlCmd = "create table " + tableName + " (";

for(int i = 0;i 添加XML数据到数据库

// 遍历DataTable中的Rows

foreach(DataRow dr in dataTableXml.Rows)

{

string sqlCmd = "insert into [" + tableName + "] (";

// 遍历Datatable的列

for(int i = 0;i

xml文件写入mysql数据库_将XML文件插入到数据库相关推荐

  1. python解析json文件写入数据库_Python3实现将本地JSON大数据文件写入MySQL数据库的方法...

    本文实例讲述了Python3实现将本地JSON大数据文件写入MySQL数据库的方法.分享给大家供大家参考,具体如下: 最近导师给了一个yelp上的评论数据,数据量达到3.55个G,如果进行分析时直接使 ...

  2. 将csv写入mysql数据库_从.csv文件到数据库

    一个整理得干干净净的数据库在现实中往往是可遇不可求的,或者说总是要买.记得唯一一次获得这种半成品是在参与一个前导师跟广州地铁的合作项目里,当时对方很爽快地给了我们一个巨大的dump文件.我之后就再没碰 ...

  3. android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  4. excel数据库_将excel文件导入mysql数据库教程(PHP实现)

    点击蓝字关注我们!每天获取最新的编程小知识! 源 / php中文网      源 / www.php.cn 在这篇文章中,我将给大家介绍如何使用PHP将excel文件导入mysql数据库.有时候我们需 ...

  5. 北大青鸟MySQL考试_晒晒在北大青鸟的数据库随笔

    大家好,我是北大青鸟的一名学生,很高兴可以在这里认识大家,也很开心,我可以把自己所学到的知识分享给大家,还希望可以帮助到大家 一.MySQL数据库的备份 使用MySQL数据库,最常用也是最重要的就是数 ...

  6. qt的mysql编程_界面编程之QT的数据库操作20180801

    /*******************************************************************************************/ 一.数据库连 ...

  7. MySQL入门_实战3_创建和删除数据库

    MySQL入门_实战系列文章目录 MySQL入门_实战1 MYSQL安装和卸载 MySQL入门_实战2 MYSQL的登录和断开以及SQL查询常见问题 文章目录 MySQL入门_实战系列文章目录 前言 ...

  8. springboot mysql事物_在Spring Boot中使用数据库事务

    关于数据库访问还有一个核心操作那就是事务的处理了,前面两篇博客小伙伴们已经见识到Spring Boot带给我们的巨大便利了,其实不用猜,我们也知道Spring Boot在数据库事务处理问题上也给我们带 ...

  9. mysql建学生-课程数据库_有一个“学生-课程”数据库,数据库中包括三个表:...

    (1)"学生"表Student由学号(Sno).姓名(Sname).性别(Ssex).年龄(Sage).所在系(Sdept)五个属性组成,可记为:Student(Sno,Sname ...

最新文章

  1. 空标签作为占位符调整距离
  2. 每天一个linux命令(28):tar命令
  3. python没基础可以学吗-没编程基础可以学python吗
  4. Android获取cpu和内存信息、网址的代码
  5. C++ 设计员工类(Employee)
  6. java面向对象(二)之继承
  7. mysql xtrabackup 主从_使用 Xtrabackup 在线对MySQL做主从复制
  8. python将数据存入数据库_Python读取NGINX日志将其存入数据库
  9. python 线程池回收_python实现线程池
  10. jenkins用ssh agent插件在pipeline里实现scp和远程执行命令
  11. postgresql-9.2beta2 安装相关
  12. Android Service与Thread的区别
  13. 开源的“底线”在哪里?
  14. 注册事件的两种方式(传统注册事件、方法监听注册事件)
  15. android 白平衡,保存Android相机焦点和白平衡状态
  16. edgy trees_在Ubuntu Edgy上安装TrueCrypt
  17. 衡水中学2021年的高考成绩查询,2021衡水市地区高考成绩排名查询,衡水市高考各高中成绩喜报榜单...
  18. 学习|全屏时钟|计时器APP横评
  19. SEM数据该如何分析?
  20. 安卓简易音乐播放器实现

热门文章

  1. 没有利用脚手架的项目中使用scss需要安装什么包
  2. DM8达梦数据库:达梦数据库分区表
  3. 挣1万,可能靠的是体力。挣10万,也许靠的是脑力。挣100万靠什么?
  4. 联盛德 HLK-W806 (六): I2C驱动SSD1306 128x64 OLED液晶屏
  5. 婚前按揭购房,婚后共同还贷,如何分割
  6. bson java_Java BSON使用
  7. 解决pip时错误:PermissionError: [Errno 13] Permission denied
  8. (转)你事业的上限究竟在哪里?《哈佛商业评论》史上最佳文章
  9. aspnet+C#房屋按揭贷款管理系统
  10. c语言直方图最大矩形面积,直方图中最大矩形面积(示例代码)