浏览 2515 次
锁定老帖子 主题:C#将XML导入到ACCESS数据库
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-02-26
最后修改:2009-02-26
前面曾写过一篇 利用 XPATH 进行XML 查找 的文章,今天写一个用普通的方式操作XML文件的例子,也是应BAIDU 知道的一位网友的需求 假设有如下的XML文件: <? xml version = "1.0 " encoding = "utf-8 " ?> < users > < user code = "lm "> < name > 黎明</ name > < sex > male</ sex > < age > 28</ age > </ user > < user code = "sq "> < name > 舒淇</ name > < sex > female</ sex > < age > 27</ age > </ user > </ users >
要将上面的XML内容,导入的一个ACCESS数据库中的userinfo表,ACCESS的userinfo表的结构如下:
代码如下:
//请将ACCESS数据库的路径替换为实际的路径 using (OleDbConnection cn = new OleDbConnection (@"Provider=Microsoft.Jet.OleDb.4.0;Data Source=d:\demo.mdb" )) { cn.Open(); using (OleDbCommand cmd = new OleDbCommand ()) { cmd.Connection = cn; cmd.CommandType = CommandType .Text; XmlDocument xml = new XmlDocument (); //请将XML的路径替换为实际的路径 xml.Load(@"d:\demo.xml" ); //取得所有的user XmlNodeList xn = xml.GetElementsByTagName("user" ); //遍历所有的user foreach (XmlElement xe in xn) { cmd.CommandText = string .Format("INSERT INTO userinfo([UserCode],[UserName],[UserSex],[UserAge]) VALUES ('{0}', '{1}', '{2}', {3})" , xe.GetAttribute("code" ), //取得code xe.ChildNodes[0].InnerText, //取得Name xe.ChildNodes[1].InnerText, //取得Sex xe.ChildNodes[2].InnerText //取得Age ); //插入数据 cmd.ExecuteNonQuery(); } } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |