从Excel 电子表格中读取数据并插入到数据库的简单方式
using (FileStream fileStreamRead = new FileStream("new.xls" , FileMode.Open ))
{
//创建工作簿
IWorkbook wk = new HSSFWorkbook (fileStreamRead );
//获得工作表的个数
int sheetCount = wk.NumberOfSheets;
for (int i = 0; i < sheetCount; i++)
{
//获得当前工作表
ISheet sheet = wk.GetSheetAt (i);
string strSql =
"insert into T_Customers(CC_CustomerName, CC_CellPhone, CC_Landline,CC_CarNum ,CC_BracketNum,CC_BuyDate) values(@CC_CustomerName, @CC_CellPhone, @CC_Landline,@CC_CarNum ,@CC_BracketNum,@CC_BuyDate)";
//获取当前工作表的总行数
int rowCount = sheet.LastRowNum ;
for (int j = 1; j <= rowCount; j++)
{
SqlParameter[] parameters = new SqlParameter []
{
new SqlParameter ("@CC_CustomerName", SqlDbType .NVarChar,50),
new SqlParameter ("@CC_CellPhone",SqlDbType .VarChar,50),
new SqlParameter ("@CC_Landline",SqlDbType .VarChar,50),
new SqlParameter ("@CC_CarNum",SqlDbType .VarChar,50),
new SqlParameter ("@CC_BracketNum",SqlDbType .VarChar,50),
new SqlParameter ("@CC_BuyDate",SqlDbType .DateTime),
};
//获得当前行
IRow row = sheet.GetRow (j);
//获得当前行的单元格数
int cellCount = row.LastCellNum;
for (int k = 0; k < cellCount; k++)
{
//获得当前单元格
ICell cell = row.GetCell (k);
if (cell == null)
{
//当前单元格的数据为空 则给数据库传入空
parameters[ k].Value = DBNull.Value;
}
else
{
//判断读到的数据类型
switch (cell.CellType)
{
//数字类型
case CellType .NUMERIC:
if (k == 5 )
{
parameters[ k].Value = cell.DateCellValue;
}
else
{
parameters[ k].Value = cell.NumericCellValue;
}
break;
//空值
case CellType .BLANK:
parameters[ k].Value = DBNull.Value;
break;
default:
parameters[ k].Value = cell.ToString();
break;
}
}
}
int r = Alian_SQL_Helper.SQL_Helper .ExecuteNonquery(strSql, CommandType .Text, parameters);
}
}
}
从Excel 电子表格中读取数据并插入到数据库的简单方式的更多相关文章
- java从文件中读取数据然后插入到数据库表中
实习工作中,完成了领导交给的任务,将搜集到的数据插入到数据库中,代码片段如下: static Connection getConnection() throws SQLException, IOExc ...
- springMVC从上传的Excel文件中读取数据
示例:导入客户文件(Excle文件) 一.编辑customer.xlsx 二.在spring的xml文件设置上传文件大小 <!-- 上传文件拦截,设置最大上传文件大小 10M=10*1024*1 ...
- C#程序从Excel表格中读取数据并进行处理
今天做了一个Excel表格数据处理的事情,因为数据量表较大(接近7000条)所以处理起来有点麻烦,于是写了一个程序, 先将程序记下以便将来查找. using System; using System. ...
- 过滤文本文档中的数据并插入Cassandra数据库
代码如下: package com.locationdataprocess; import java.io.BufferedReader; import java.io.File; import ja ...
- 把excel表中的数据导入到mysql数据库中
1.把excel表结构转化为csv,在把csv后缀改为txt文件,把txt文件另存为,把字符集编码转化成utf-8,在把txt文件转化为csv文件 注意:需要导入的数据表格头的名字要和数据库的字段名一 ...
- 【asp.net】asp.net实现上传Excel文件并读取数据
#前台代码:使用服务端控件实现上传 <form id="form1" runat="server"> <div> <asp:Fil ...
- PHP如何将多维数组中的数据批量插入数据库?
PHP将多维数组中的数据批量插入到数据库中,顾名思义,需要用循环来插入. 1.循环insert into 语句,逐渐查询 <?php /* www.qSyz.net */ @mysql_conn ...
- 利用java反射机制实现读取excel表格中的数据
如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...
- python读取excel表格中的数据
使用python语言实现Excel 表格中的数据读取,需要用到xlrd.py模块,实现程序如下: import xlrd #导入xlrd模块 class ExcelData(): def __init ...
- 从Excel中读取数据(python-xlrd)
从Excel中读取数据(python-xlrd) 1.导入模块 import xlrd 2.打开Excel文件读取数据 data = xlrd.open_workbook('excelFile.xls ...
随机推荐
- Python 明明安装了Crypto模,但报错No module named “Crypto“
安装网上的解决方法卸载:pip uninstall cryptopip uninstall pycryptodomepip uninstall pycrypto重装:pip install Crypt ...
- axios文件下载!!!!
前端 download(){ debugger; this.loading = true; axios.post('http://localhost:8081/brand_case/dao.do?me ...
- c语言趣味编程(1)百钱百鸡
一.问题描述 百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用100文钱买100只鸡,公鸡.母鸡.小鸡各买多少只 二.设计思路 (1)定义三个变量下x,y,z代表公鸡,母鸡,小鸡的数 ...
- c# 异步进阶———— 自定义 taskschedule[三]
前言 我们知道我们的task async 和 await 是基于线程池进行调度的. 但是async 和 await 也就是使用了默认的task调度,让其在线程池中运行. 但是线程池是榨干机器性能为本质 ...
- OpenAI的离线音频转文本模型 Whisper 的.NET封装项目
whisper介绍 Open AI在2022年9月21日开源了号称其英文语音辨识能力已达到人类水准的Whisper神经网络,且它亦支持其它98种语言的自动语音辨识. Whisper系统所提供的自动语音 ...
- java LocalDateTime的使用
1.LocalDateTime的基本使用 //获取当前时间 LocalDateTime localDateTime = LocalDateTime.now(); System.out.println( ...
- SpringBoot 集成 SpringSecurity + MySQL + JWT 附源码,废话不多直接盘
SpringBoot 集成 SpringSecurity + MySQL + JWT 无太多理论,直接盘 一般用于Web管理系统 可以先看 SpringBoot SpringSecurity 基于内存 ...
- 用Python语言进行时间序列ARIMA模型分析
应用时间序列 时间序列分析是一种重要的数据分析方法,应用广泛.以下列举了几个时间序列分析的应用场景: 1.经济预测:时间序列分析可以用来分析经济数据,预测未来经济趋势和走向.例如,利用历史股市数据和经 ...
- 2020-10-15:mysql的双1设置是什么?
福哥答案2020-10-15:#福大大架构师每日一题# [答案来自知乎:](https://www.zhihu.com/question/425704691) 其实就是innodb_flush_log ...
- VB.NET 截取字符串
在VB.NET中,您可以使用Substring方法或Split方法来截取字符串. Substring方法允许您从字符串中提取一个子字符串,该子字符串从指定的起始索引开始,并继续到字符串的末尾或指定的长 ...