ASP.NET关于对excel数据导入到数据库
//*******************************C#(UI代码)********************************/
Web界面上放一个FileUpload 名称为:FileUpload1, 一个button按钮,名称为button1
程序中应用的两个外部引用为:Ionic.Zip.dll 和 NPOI.dll ; Ionic.Zip.dll可以不引用,单独的NPOI.dll也是可以的
//*********************************C#(UI代码)****************************/
namespace WebApp.BaseData
{
public partial class Test : System.Web.UI.Page
{
public string strPath; /*strPath这个变量用来存储上传上来的文件名*/
protected void Button1_Click(object sender, EventArgs e)
{
if (FileUpload1.FileName != "") /*1判断用户是否添加了文件*/
{
strPath = FileUpload1.FileName; /*1获取文件名*/
string MapPath = Server.MapPath("../bin/"); /*1更改路径*/
FileUpload1.SaveAs(MapPath + FileUpload1.FileName);
#region MyRegion
using (FileStream file = new FileStream(MapPath + strPath, FileMode.Open, FileAccess.Read))//1以文件流的形式打开文件
{
using (Workbook wk = new HSSFWorkbook(file))/*1打开工作薄*/
{
using (Sheet sheet = wk.GetSheetAt())
{
for (int j = ; j <= sheet.LastRowNum; j++)//1循环行数量 j=1表示不要第一列,因为第一列是字段的名字
{
Row row = sheet.GetRow(j);//1获取行
int length = row.LastCellNum; ////////1这条语句,在本程序中,没有作用,可以删除,仅做调试使用
List<string> list = new List<string>();
for (int i = ; i < row.LastCellNum; i++)
{
Cell cell = row.GetCell(i);//1获取单元格里的数据
if (cell != null)//1如果单元格里有数据
{
list.Add(cell.ToString());//则将这个单元格里的数据添加到List集合里;
}
}
ArrayList array = new ArrayList(); //1创建一个Array数组
for (int k = ; k < list.Count; k++)//1循环读取List集合里的一行数据,本程序是读一行,插入一行
{
array.Add(list[k].ToString());//1将List集合里的一行数据,放到Array数组里,方便作为参数传递;
}
BLL.AL.BLL_Test bll = new BLL.AL.BLL_Test();
int num = bll.InsertDate(array);//1调用BLL的Test(参数)方法,将一行数据传过去
}
}
}
}
#endregion
}
else
{
Response.Write("<script>alert('请选择文件')</script>");
}
}
}
} //*****************************************************C#(BLL代码)***************************************************/
DAL.AL.DAL_Test dal = new DAL.AL.DAL_Test();
public int InsertDate(ArrayList array)
{
return dal.InsertDate(array);//将一行数据传给DAL
}
//*****************************************************C#(DAL代码)***************************************************/
public int InsertDate(ArrayList array)
{
string sql = "insert into Test(T_ProdDate,T_Paln,T_Prod) values(@T_ProdDate,@T_Paln,@T_Prod)";//写插入的SQL语句
SqlParameter[] parameter ={ //1参数,这里面写的有点死
new SqlParameter("@T_ProdDate",array[]), //1,我的数据库里只有三列数据
new SqlParameter("@T_Paln",array[]),
new SqlParameter("@T_Prod",array[])
};
return Utility.SqlHelper.ExecuteNonQuery(sql, parameter);
}
//*****************************************************C#(Excel里面的样式,将下面的数据复制到EXCEL表格里面)***************************************************/
时间 计划 实际
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- :
-- : //*****************************************************C#(SQL Server 数据表结构)***************************************************/
create table Test
(
T_ID INT identity(,) primary key, //1序号
T_ProdDate varchar() not null, //1生产日期
T_Paln varchar() not null, //1计划产量
T_Prod varchar() not null, //1实际产量
T_IsDel CHAR() default '' //1删除标志
)
ASP.NET关于对excel数据导入到数据库的更多相关文章
- 将Excel数据导入mysql数据库的几种方法
将Excel数据导入mysql数据库的几种方法 “我的面试感悟”有奖征文大赛结果揭晓! 前几天需要将Excel表格中的数据导入到mysql数据库中,在网上查了半天,研究了半天,总结出以下几种方法,下面 ...
- 利用TOAD实现把EXCEL数据导入oracle数据库
利用TOAD实现把EXCEL数据导入oracle数据库 工具: Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然 ...
- c#将Excel数据导入到数据库的实现代码
这篇文章主要介绍了c#将Excel数据导入到数据库的实现代码,有需要的朋友可以参考一下 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: 代码: 代码如下: using Syste ...
- java实现EXCEL数据导入到数据库中的格式问题的解决
之前作为项目甲方,加之java接触不多,在java web开发方面都是打下手的份. 对于EXCEL数据导入到数据库这个问题一直老是出现格式原因而导入失败也是未免惆怅,开发团队也是只说回去检查一下格式. ...
- NOPI Excel 数据导入到数据库
/// <summary> /// 上传excel文件 并将文件数据导入到数据库 /// </summary> /// <param name="file&qu ...
- 把Excel数据导入到数据库
引入命名空间 using System.IO; using System.Data; using System.Data.OleDb; 引入命名空间 首先要把Excel上传到服务器 //上传Excel ...
- c#将Excel数据导入到数据库的实现代码(OleDb)
sing System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web ...
- c#将Excel数据导入到数据库的实现代码(转载)
假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: 代码如下: using System; using System.Collections.Generic ...
- C# Excel数据导入到数据库
http://www.jb51.net/article/44743.htm 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: 代码: 复制代码 代码如下: using System ...
随机推荐
- JavaScript 操作 Cookie
转自作者:聂微东出处:http://www.cnblogs.com/Darren_code/ 什么是 Cookie “cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器 ...
- 关于mysql MYISAM引擎的锁问题
CREATE TABLE `citymy` ( `city_id` smallint(5) unsigned NOT NULL DEFAULT '0', `city` varchar(50) CHAR ...
- 安装VS2015历险记
最近,因为一些需求,需要在家里的笔记本上安装VS2015.本来以为一件很容易的一件事,发现做起来遇到了很多坑. 首先,下载VS2015,这就花费了两三个小时,安装包太大了.下载完,安装.安装不成功,报 ...
- mysql基准测试
1. 及注册时有两种主要的策略:①正对整个系统的整体测试(集成式full-stack) ②单独测试mysql(但组件式基准测试single-component) 2.获取系统性能和状态(需要记录的数据 ...
- Linux安装卸载Mysql数据库
关于mysql数据库在Linux下的应用一直以来都是我认为比较棘手的,这次通过搭建Linux学习环境顺便研究和学习Mysql数据库在Linux下安装和卸载. 1.先来看看卸载吧,如下图所示: 以上的命 ...
- 攻城狮在路上(陆)-- hadoop分布式环境搭建(HA模式)
一.环境说明: 操作系统:Centos6.5 Linux node1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 ...
- iOS多播放器封装
今年在做直播业务的时候遇到一些问题,就是在一个套播放器UI中需要多种不同的播放器(AVPlayer.IJKPlayer.AliPlayer)支持,根据ABTest开关来切换具体使用哪种播放器,并且还要 ...
- java中包的命令行(cmd)操作详解
一.什么是包? 为了更好地组织类,防止在一个空间下出现类重名,Java提供了包机制.包是类的容器,用于分隔类名空间(类型于C++中的命名空间).如果没有指定包名,所有的示例都属于一个默认的无名包(又称 ...
- .NET 项目代码风格要求
原文:http://kb.cnblogs.com/page/179593/ 项目代码风格要求 PDF版下载:项目代码风格要求V1.0.pdf 代码风格没有正确与否,重要的是整齐划一,这是我拟的一份&l ...
- 代码在ie9中不能正确执行
<!DOCTYPE html> <html> <head lang="zh"> <meta charset="UTF-8&quo ...