EXCEL数据导入dataset
一、开工必备
1、micorosoft office2007
2、VS2010、Oracle 11
二、界面
三、内部代码
(1)获取数据库连接,定义全局变量
private static string connString = System.Configuration.ConfigurationSettings.AppSettings[ "connStr" ];
DataSet dTable;
(2)选择Excel文件导入dataset
if(openFileDialog1.ShowDialog()==DialogResult.OK)
{
ctlPath.Text = openFileDialog1.FileName;
ExceltoDataSet(ctlPath.Text);
}
(3)加载Excel文件数据
public DataSet ExceltoDataSet(string path)
{
MessageBox.Show( "正在获取数据....请稍候" );
//
string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="+path+";Extended Properties='Excel 12.0;HRD=Yes;IMEX=1';" ;
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
System.Data.DataTable schemaTable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables,null);
string tableName = schemaTable.Rows[0][2].ToString().Trim();
string strExcel = " " ;
OleDbDataAdapter myCommand = null;
DataSet ds = null;
strExcel = "Select * from [" + tableName + "]";
myCommand = new OleDbDataAdapter(strExcel,strConn);
ds = new DataSet();
try
{
myCommand.Fill(ds, tableName);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
dTable = ds;
if (ds != null)
{
button2.Visible = true;
}
return ds;
}
(4)显示导入数据
DataTable dt = dTable.Tables[0];
try {
for (int i = 0; i > 0; i++)
{
dt.Rows.Remove(dt.Rows[i]);
}
dataGridView1.DataSource = dt;
} catch (Exception ex)
{
throw ex;
}
(5)将数据导入数据库
- DataTable dt = dTable.Tables[0];
- for (int i = 1; i < dt.Rows.Count; i++)
- {
- string sql1 = string.Format( "insert /*+nologging*/ into TPB_CARCONFIG(LINERNUM,RESID,CARTYPEID,RESFNAME,RESURL,BRAND" +
- " values('" + dTable.Tables[0].Rows[i][0] + "','101','" + dTable.Tables[0].Rows[i][0] + "','汽车之家','www.autohome.com.cn/', " +
- " '" +dTable.Tables[0].Rows[i][181]+ "','" +dTable.Tables[0].Rows[i][182]+ "','" +dTable.Tables[0].Rows[i][183]+ "','" +dTable.Tables[0].Rows[i][1]+ "')" );
- OracleConnection oconn = new OracleConnection(connString);
- oconn.Open();
- OracleCommand cmd;
- try {
- cmd = new OracleCommand(sql1.ToString(), oconn);
- int a = Convert.ToInt32(cmd.ExecuteNonQuery());
- if (a > 0) {
- }
- } catch (Exception ex) {
- 注:这里收集重复信息的编号,保存到txt文本
- string path = "c:错误信息.txt" ;
- FileStream fs = new FileStream(path,FileMode.Append);
- StreamWriter sw = new StreamWriter(fs);
- sw.WriteLine( "Excel编号" + dTable.Tables[0].Rows[i][0]+ "数据已与数据表中重复" );
- sw.Close();
- fs.Close();
- fs.Dispose();
- continue;
- }
- oconn.Close();
- }
注:该程序我没有使用线程,所以在导入大量数据的时候,winform窗体假死,但是程序依然在奋斗,请耐心等待复活。
四、效果图
1、导入前
2、导入后→点击显示数据
五、源码下载http://pan.baidu.com/s/1sj4U2i5
转载于:https://www.cnblogs.com/QQ248604315/p/4000071.html
EXCEL数据导入dataset相关推荐
- 批量Excel数据导入Oracle数据库
由于一直基于Oracle数据库上做开发,因此常常会需要把大量的Excel数据导入到Oracle数据库中,其实如果从事SqlServer数据库的开发,那么思路也是一样的,本文主要介绍如何导入Excel数 ...
- 怎么将excel数据导入到datagridview中
本人小白,想要实现EXCEL文件中的数据导入到datagridview中,EXCEL中的数据是多行多列,行数和列数不确定,如何实现导入到datagridview中显示,具体的界面如下: 两个butto ...
- C#将Excel数据导入到SQL server数据库
将Excel数据导入到数据库,用winfrom系统,如图: 该系统可以选择导入的Excel文件,设置要导入的数据库的基本设置. 代码: winfrom窗体: public partial class ...
- Excel 数据导入SQL XML 自动生成表头
去出差的时候应客户要求要要将Excel 文件内的数据批量导入到数据库中,而且有各种不同种类的表格,如果每一个表格多对应一个数据表的话, 按照正常的方法应该是创建数据表,创建数据库中映射的数据模型,然后 ...
- matlab在曲线给命名,matlab 利用xlsread画图,怎么将一组excel数据导入,通过matlab作图...
Matlab 循环 for 语句 xlsread EXCEL表格数据导入 画图 Matlab的 xlsread() 函数可以将Excel数据到matlab工作空间,然后就可以根据读入据作图.下面给出操 ...
- 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】)...
本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较 (三)SSIS的简介 (四)数据库中存储过程示例(SSIS应用需要) (五)Excel模板的制作(这步这么简单,稍微介 ...
- python将EXCEL数据导入数据库时日期型数据变成数字并加.0的问题一行代码解决方案方案
[问题描述]:python将EXCEL数据导入数据库时日期变成文本型数据并显示为数字格式 [解决方案] 数据源: codes: #!/usr/bin/python3 -- coding: utf-8 ...
- 效率最高的Excel数据导入续---SSIS Package包制作图解全过程
目的:本文主要是详细讲解SSIS Package包的制作过程 本人买过的一张盗版windows 2003操作系统光盘上,上面自带有很详细的图文介绍,也就是傻瓜版的系统安装图解.因此,本文打算也是采用那 ...
- python接入excel_使用python将excel数据导入数据库过程详解
因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接丢代码,使用python3,注释比较清楚. ...
最新文章
- 知乎2w人关注,没有工程开发经验的人是怎么找到工作的?
- 皮一皮:你的工资去哪了?实锤了!
- CSU-1982 小M的移动硬盘
- centos redis make 报错_Redis入门安装,你只需要看我写的这篇就行了
- python写xml文件_用python写xml文件
- java log4j 热部署_JAVA类加载器分析--热部署的缺陷(有代码示例,及分析)
- Angular 的概念模型
- 三星5nm产品开发进度出问题,高通紧急向台积电求援
- 前端JavaScript开发中需要注意的代码问题
- jquery实现某宝放大点击切换
- python开发Day10(多进程多线程补充)
- 【开发日志】gtest踩坑:-1: error: cannot find -llibgtest
- 关于unity导出FBX文件
- 微软产品无法通过代理连接互联网解决办法
- 为什么要进行网站流量分析?从6个方面告诉你答案
- 第一章 会计学总论 详细笔记
- R语言置信区间计算(confidence interval)、计算比例值对应的置信区间、为比例值构建95%执行区间、使用glue包把最终结果以标准格式输出
- OpenCV图像基本操作——图像合成
- 第一篇博客,写给自己
- C/C++编程:默认构造函数的建构操作
热门文章
- 百度顶会论文复现(2):GAN综述
- Apollo进阶课程⑪ | Apollo地图生产技术
- 读取ppt并存入数据库_Java解析Excel文件并把数据存入数据库
- python两次调用write连续写入的数据之间_两次调用文件的write 方法,以下选项中描述正确的是...
- linux串口写入命令失败,linux – 从串口读取失败
- php打开文件读写函数,php中常用文件操作读写函数介绍
- java 的对象类用_java基础(第零篇)对象与类
- python os模块方法_python os模块方法总结
- leetcode76 最小覆盖子串
- linux加密框架 crypto 通用算法注册接口__crypto_register_alg注册流程