/// <summary>
/// 导出为mdb
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnExportMdb_Click(object sender, RoutedEventArgs e)
{
try
{
using (DataTable dts = new DataTable())
{
#region 查找数据源
foreach (DevExpress.Data.DataColumnInfo item in user_GridControl.DataController.Columns)
dts.Columns.Add(item.Name.ToString().Trim().ToLower(), item.Type.Name.GetType());
foreach (System.Data.DataRowView item0 in user_GridControl.DataController.GetAllFilteredAndSortedRows())
{
DataRow row = dts.NewRow();
foreach (DataColumn item in dts.Columns)
row[item.ColumnName] = item0.Row[item.ColumnName];
dts.Rows.Add(row);
}
#endregion
#region 0.用户保存文件的路径
string paths = string.Empty;
Microsoft.Win32.SaveFileDialog sfd = new Microsoft.Win32.SaveFileDialog();
sfd.Filter = "mdb|*.mdb";
if (sfd.ShowDialog() == true)
{
#region 1.创建mdb文件(创建数据库)
paths = sfd.FileName;
if (string.IsNullOrWhiteSpace(paths))
return;
if (!CreateAccessDb(paths))
System.Windows.MessageBox.Show("创建表失败...");
//MessageBox.Show("创建成功");
#endregion
}
#endregion
#region 2.创建表
string Table = btn_text.Replace("(", "(").Replace(")", ")");
List<string> strList = new List<string>();
StringBuilder ziduan = new StringBuilder();
foreach (DataColumn item in dts.Columns)
{
ziduan.Append("," + item.ColumnName + " text");
}
strList.Add(string.Format("create table {0}({1})", Table, ziduan.ToString().Substring()));
MDBHelper.CreateCYTable(MDBHelper.CreateConnectionNew(paths), strList);
#endregion
#region 3.添加数据
StringBuilder Tableziduan = new StringBuilder();
foreach (DataColumn item in dts.Columns)
Tableziduan.Append("," + item.ColumnName); List<string> insertSQLs = new List<string>();
int k = ;
foreach (System.Data.DataRowView item0 in user_GridControl.DataController.GetAllFilteredAndSortedRows())
{
k++;
StringBuilder data = new StringBuilder();
foreach (DataColumn item in dts.Columns)
data.Append(",'" + ((item0.Row[item.ColumnName].ToString() == "" || item0.Row[item.ColumnName].ToString() == null) ? "" : item0.Row[item.ColumnName].ToString()) + "'");
insertSQLs.Add(string.Format("INSERT INTO {0}({1}) VALUES({2});", Table, Tableziduan.ToString().Substring(), data.ToString().Substring()));
if (k == )
{
int ExecuteSuccessfully0 = MDBHelper.ExcuteListSQL(insertSQLs, paths);
k = ;
insertSQLs.Clear();
}
}
int ExecuteSuccessfully1 = MDBHelper.ExcuteListSQL(insertSQLs, paths);
#endregion
}
MessageBox.Show("导出成功!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

WPF DEV gridcontrol当前项的数据导出为mdb文件的更多相关文章

  1. 数据导出至Excel文件--好库编程网http://code1.okbase.net/codefile/SerializeHelper.cs_2012122018724_118.htm

    using System; using System.IO; using System.Data; using System.Collections; using System.Data.OleDb; ...

  2. plsql 把数据导出成为 .sql文件,记住了

    今天上午,同事 提醒我.可以直接把数据导出成 .sql 文件,类似于 反编译.见下图

  3. Qt中将QTableView中的数据导出为Excel文件

    如果你在做一个报表类的程序,可能将内容导出为Excel文件是一项必须的功能.之前使用MFC的时候我就写过一个类,用于将grid中的数据导出为Excel文件.在使用了QtSql模块后,我很容易的将这个类 ...

  4. Pl/sql 如何将oracle的表数据导出成excel文件?

    oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出e ...

  5. C#将数据集DataSet中的数据导出到EXCEL文件的几种方法

    using System; using System.Collections.Generic; using System.Text; using System.Data; using System.W ...

  6. VB将MSHFlexGrid数据导出到Excel文件通用功能

    1.通用导出Excel功能. 2.将 MSHFlexGrid数据导出到Excel文件通用功能. 3.具体代码如下: '将下列代码保存到一模块文件中,调用方法:Export fgrid1,cd1 Pub ...

  7. 用node.js写一个简单爬虫,并将数据导出为 excel 文件

    引子 最近折腾node,最开始像无头苍蝇一样到处找资料,然而多数没什么卵用,都在瞎比比.在一阵瞎搞后,我来分享一下初步学习node的三个过程: 1 撸一遍NODE入门,对其有个基本的了解: 2 撸一遍 ...

  8. dataview将excel表格的数据导出成txt文件

    有时候需要处理大量的数据,且这些数据又存在于excel表格内,在平时的时候,我是非常喜欢这样的数据的,因为只要是excel表格内的数据,处理起来的方法就很方便.也可能我平时遇见的数据总是以一种杂乱无章 ...

  9. C#中dategridview数据导出为excel文件

    先从数据库中获取数据,绑定在datagridview中,再从dategridview中导出为excel文件 1.新建窗体,把控件datagridview和按钮设置好,如图

随机推荐

  1. java语言基础--接口

    接口定义: 是一个特殊的抽象类,在接口里面的所有方法都是抽象的. 接口用interface来声明. 注意: 接口中只能出现常量和抽象方法: 接口里面没有构造方法,无法创建接口的对象: 接口和接口之间支 ...

  2. 关于jstl中碰到的Property 'username' not found on type java.lang.String异常

    在jstl的forEach循环的时候总是有异常,刚开始以为是把类的属性名打错了,因为显示的是Property not found,但就算从类文件里面复制属性名过来依然显示的是Property not ...

  3. nexus 随笔

    离线更新中央仓库索引的方式,速度快并且可靠. 访问http://repo.maven.apache.org/maven2/.index/下载中心仓库最新版本的索引文件,我们需要下载如下两个文件nexu ...

  4. XSS学习(三)挖掘思路

    HTML标签之间 <div id="body"> [输出点] </div> payload:<script>alert(1)</scrip ...

  5. 插入排序-C#实现

    插入排序包括:直接插入排序和希尔排序. 具体代码如下: 直接插入排序: /// <summary> /// 直接插入排序 /// 适用于少量元素的排序 /// 稳定性:稳定 /// 时间复 ...

  6. Breakout 打砖块

    发售年份 1976 发售平台 多平台 开发商 雅达利(Atari) 类型 动作 https://www.youtube.com/watch?v=AMUv8KvVt08

  7. windows 时间服务器配置详解

    最近发现公司的服务器时间一直不准确,也无法和外部时间源进行同步.公司是域环境,按理说客户端PC应该自动和域控AD进行时间同步,但是PC机时间老是不能同步,不是慢了就是快了,就是和域控时间不一致.其它服 ...

  8. 数据库if判断语句

    THEN '青年' ELSE '未成年' END) as age_text from user 更多写法参考:http://www.cnblogs.com/martinzhang/p/3220595. ...

  9. Linux DNS 服务器安装、配置和维护

    每个 IP 地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开.有了主机名,就不要死记硬背每台 IP 设备的 IP 地址,只要记住相对直观有意义的主机名就行了.这就是 DNS ...

  10. 为毛GPU Cache不能移动顶点?

    这篇文章属于典型的剥洋葱文,由表及里,逐步引入新的知识点,挖掘最本质的原因.这篇文的逻辑是先假设再证明,按照这个思路去阅读会比较轻松. Maya里的GPU Cache导入的几何体为什么不能编辑顶点?这 ...