/// <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. 小程序之hover-class

    hover-class 属性主要是用来来指定元素的点击态效果.但是在在使用中要注意,大部分组件是不支持该属性的. 目前支持 hover-class 属性的组件有三个:view.button.navig ...

  2. shell脚本-2

    http://www.runoob.com/linux/linux-shell-variable.html 字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似. 单引号字符 ...

  3. 多线程与CPU和多线程与GIL

    多线程与CPU:1.单核CPU  CPU密集型的程序(做计算操作的程序)  单线程即可( 此时的任务已经把CPU资源100%消耗了,就没必要也不可能使用多线程来提高计算效率)2.单核CPU  IO密集 ...

  4. 学习笔记CB003:分块、标记、关系抽取、文法特征结构

    分块,根据句子的词和词性,按照规则组织合分块,分块代表实体.常见实体,组织.人员.地点.日期.时间.名词短语分块(NP-chunking),通过词性标记.规则识别,通过机器学习方法识别.介词短语(PP ...

  5. 学习笔记TF062:TensorFlow线性代数编译框架XLA

    XLA(Accelerated Linear Algebra),线性代数领域专用编译器(demain-specific compiler),优化TensorFlow计算.即时(just-in-time ...

  6. postgresql 最大连接数相关

    PG中有一张表记录着当前有多少连接 表名:pg_stat_activity 查询当前连接数: select count(1) from pg_stat_activity; 查询最大连接数 show m ...

  7. virtualenvwrappers pipreqs 踩坑

    virtualenvwrappers 1.安装 pip install virtualenvwrapper 在~/.bashrc 中写入 export WORKON_HOME=~/.virtualen ...

  8. Battle Zone 战争地带

    发售年份 1980 平台 街机 开发商 雅达利(Atari) 类型 射击 https://www.youtube.com/watch?v=Ctr54kopo8I

  9. Spring BOOT的学习笔记

    1,静态文件夹src/main/resources/static下的,图片必须放在images文件夹下才能访问,直接放在static下不能访问 2,配置热部署,否则修改下Html,图片都得重启 htt ...

  10. cpt212b--- 触摸芯片配置

    软件的应用: 1.可以依照你所需要的芯片类型建立适当的工程,下面是在没有j-link的情况时的一种操作方式 建立完工程后,cpt212b的配置参数页面如上,更改参数点击Save 按钮,软件自动生成 . ...