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 ...
随机推荐
- 创建Hello World程序(part-1)
写在前面: 2006年,刚上大学,班上有几个计算机文盲,1分钟打二十几个字都困难,很不幸,我就是其中的一个.强烈的自尊心驱使我不停恶补,翻遍了图书馆的计算机文化基础,知耻而后勇...后来,C语言居然考 ...
- Xcode8更新约束
Xcode升级之后就会发现约束设置好,想更新一下约束,看看约束是不是刚刚好,习惯性的去点右下角的更新约束的结果却发现没有更新约束的这一项了,好尴尬. 后来发现原来在Xcode8的约束更新换了一个地方, ...
- windows系统 SVN出现 can't open file‘\XXX\txn-current-lock’ 拒绝访问 问题处理
问题描述: 在新建的svn目录下,提交文件出现 如图错误提示.
- Range Sum Query - Immutable
https://leetcode.com/problems/range-sum-query-immutable/ 用缓存撒 /** * @constructor * @param {number[]} ...
- react-native 踩坑记
最近在使用react-native的时候遇到了很多坑,这里给大家分享下 一.样式 react-native 虽然支持flex布局,但是所有的样式均是css样式的一个很小的集合,尤其是在安卓机下问题尤为 ...
- CozyRSS2开发记录0-win10开坑
1.回顾 距离上一篇<CozyRSS1.0 - 有可用性版本>,恰好两个月整.在初步完成CozyRSS的WPF桌面版后,按照设想的,开始搞一个手机版的CozyRSS.由于种种原因,并没有使 ...
- Android网络定位服务定制简述
Android 添加高德或百度网络定位服务 Android的网络定位服务以第三方的APK方式提供服务,由于在国内Android原生自带的com.google.android.gms服务几乎处于不可用状 ...
- OpenGL帧缓存对象(FBO:Frame Buffer Object)(转载)
原文地址http://www.songho.ca/opengl/gl_fbo.html 但有改动. OpenGL Frame BufferObject(FBO) Overview: 在OpenGL渲染 ...
- java对象转换成json
package com.bjs.acrosstime.utils; import java.util.ArrayList; import java.util.Date; import java.uti ...
- iOS之使用模拟器报错:resource fork, Finder information, or similar detritus not allowed
很奇怪的问题,使用真机测试没有问题.但使用模拟器测试的时候就会报这样的错误,错误类型为:Code Sign Error 错误提示是这样:resource fork, Finder informatio ...