//连接数据库
SqlConnection con = new SqlConnection("server=****;database=****;uid=sa;pwd=********"); /// <summary>
/// 提取数据表保存为XML文件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
try
{
//打开数据库
con.Open(); //当数据库为打开时
if (con.State == ConnectionState.Open)
{ //声明一个DataTable 存储数据
DataTable dt = new DataTable();
//SQL语句
string str = "select * from CurrentStock"; //声明一个sql数据适配器执行sql语句
SqlDataAdapter sad = new SqlDataAdapter(str, con); //将SQLql数据适配器的内容填充到DATATABEL
sad.Fill(dt); //当DataTable的内容大于0 时,向下执行
if (dt.Rows.Count > )
{ //创建一个DOM对象
XDocument xDoc = new XDocument();
//创建XML文档的声明语句
XDeclaration xDec = new XDeclaration("1.0", "UTF-8", "no");
//将声明语句给XML文档xDoc
xDoc.Declaration=xDec; //创建一个根节点
XElement xrootElement = new XElement("CurrentStock");
//将根节点添加到XML文档xDoc中
xDoc.Add(xrootElement); //遍历DataTable的每一行
for (int i = ; i < dt.Rows.Count; i++)
{
//创建一个子节点,区分每一行的数据
XElement xElementRow = new XElement("Row");
//给子节点Row添加一属性,这里是行号,识别一共有多少行
xElementRow.SetAttributeValue("Autoid", (i + ).ToString()); //遍历每一列,主要获取列名
for (int j = ; j <dt.Columns.Count; j++)
{
//向子节点Row中添加子元素, 元素的名称是dt中的列表 ,值是dt中每一行每一列的值
xElementRow.SetElementValue(dt.Columns[j].ColumnName, dt.Rows[i][j].ToString().Trim()); } //将子点节Row添加到根节点下
xrootElement.Add(xElementRow); } //保存XML文件
xDoc.Save("TableNameA"); //提示成功
MessageBox.Show("OK"); } else
{ MessageBox.Show("表中没有数据!"); } }
else
{
MessageBox.Show("数据库连接出错,请检查!"); } }
catch
{ throw; } con.Close();
}

提取数据表保存为XML文件的更多相关文章

  1. oracle 10g 用dbms_xmlgen将数据表转成xml格式

    oracle 10g 用dbms_xmlgen将数据表转成xml格式 oracle 10g 用dbms_xmlgen将数据表转成xml格式 oracle用plsql将sql查询的所有数据导出为xml

  2. Android吧数据保存成xml文件

    public class MainActivity extends Activity { private List<Person> persons; @Override protected ...

  3. 爬取表格类网站数据并保存为excel文件

    本文转载自以下网站:50 行代码爬取东方财富网上市公司 10 年近百万行财务报表数据 https://www.makcyun.top/web_scraping_withpython6.html 主要学 ...

  4. List<T>保存为XML文件

    今天我们学习怎样把List<T>写成一个XML文件保存起来.因为我们在做动态网站开发时,需要对一些不太常变化的数据产生为XML文件,让程序直接去读取,而不是每次是SQL数据库取. 为了解决 ...

  5. Hibernate每个子类一张表(使用XML文件)实例

    在每个子类一张表的情况下,子类映射表与主键和外键关系与父类映射表相关. 类的<joined-subclass>元素用于使用主键和外键关系将子类与父对象进行映射. 在这个例子中,我们将使用h ...

  6. 如何将数据库中的表导成XML文件

    1.现将数据库中的信息读到DataTable中 2.用函数将DataTable转为string private string ConvertDataTableToXML(DataTable dt) { ...

  7. python文件目录遍历保存成xml文件代码

    Linux服务器有CentOS.Fedora等,都预先安装了Python,版本从2.4到2.5不等,而Windows类型的服务器也多数安装了Python,因此只要在本机写好一个脚本,上传到对应机器,在 ...

  8. LabVIEW数据记录和存储—XML文件

    XML(eXtensible Markup Language)是一种目前广泛使用的数据传输和存储的格式,其本质上是一种文本文件,可以使用任何一个文本编辑工具打开和修改.类似于HTML,XML被设计为具 ...

  9. DataGrid通过DataSet保存为xml文件,并导入

    做了个小的DataGrid通过DataSet保存为xml_测试,DataGrid通过DataSet保存为xml_测试,通过dataSet.writeXML()和dataSet.readXML()方法完 ...

随机推荐

  1. Sublime Text 2结合VS2010配置C C++编译

    本文参考以下文章 特此谢谢 http://www.cnblogs.com/akira90/archive/2013/01/02/2842571.html 因遇到错误,浪费一个小时才解决 一.利用VS2 ...

  2. HTTP,HTTP2.0,SPDY,HTTPS你应该知道的一些事

    作为一个经常和web打交道的程序员,了解这些协议是必须的,本文就向大家介绍一下这些协议的区别和基本概念,文中可能不局限于前端知识,还包括一些运维,协议方面的知识,希望能给读者带来一些收获,如有不对之处 ...

  3. Swift 基本语法2

    一.?和! 1.可选类型: ? 在swift中,可选类型(?)其根源是一个枚举型,里面有None和Some两种类型.其实所谓的nil就是Optional.None, 非nil就是Optional.So ...

  4. Fragment详解

    1 Fragment简介 1.1 Fragment的设计初衷 Android3.0引入Fragment的初衷是为大屏幕的设备提供更加灵活的动态UI设计,由于大屏设备可以容纳更多的UI组件,且这些UI组 ...

  5. MySQL 常用语句 (汇集)

    原文地址:MySql常用语句作者:wuyanle 一.mysql常用语句 创建,删除和最基本查询: 显示数据库  mysql->show databases; 创建数据库  mysql-> ...

  6. spring aop 的一个demo(未完,待完善)

    假设我们有这样的一个场景 : 对于一个类的众多方法,有些方法需要从缓存读取数据,有些则需要直接从数据库读取数据.怎样实现呢? 实现方案有多种.下面我说下常见的几种实现方案 : 1.直接采用spring ...

  7. android studio 真机调试

    1.使用usb连接电脑,打开开发者选项,打开usb调试. 2.不能使用仅充电,修改为媒体设备(MTP) 3.如果无法连接可以使用豌豆荚或者金山手机助手连接. 4.运行android程序即可. 5.如果 ...

  8. 【49】了解new_handler的行为

    1.使用operator new无法获取内存时,对于旧式编译器,会返回一个null指针.对于新式编译器,会抛出一个异常. 2.考虑下面的需求,当operator new 无法获取内存时,程序员期望获得 ...

  9. DotNet IOC Framework - Microsoft Unity介绍

    一. 新建一个ASP.NET MVC4项目 二. 安装Microsoft Unity 1) 管理Nuget程序包 2)安装Unity3程序包 在你的App_Start文件夹里会多出来两个文件 三. 一 ...

  10. HDU 5476 Explore Track of Point 数学平几

    Explore Track of Point Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem ...