public partial class ImportExcel : Form
{
AceessHelpers accessHelper = new AceessHelpers();
public ImportExcel()
{
InitializeComponent();
} private void btn_importExcelData(object sender, EventArgs e)
{
openFileDialog1.Title = "打开文件";
openFileDialog1.ShowHelp = true;
openFileDialog1.RestoreDirectory = true; //openFileDialog1.Filter = "Excel文件(*.xlsx)|(*.xls)";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
this.txt_path.Text = openFileDialog1.FileName;
}
} private void btn_upload_Click(object sender, EventArgs e)
{
string path = openFileDialog1.FileName; System.Data.DataTable dt = GetDataTable(path);
int result = ;
for (int i = ; i < dt.Rows.Count; i++)
{
string sql = "insert into Products (ProductName,Area,ProductCategory,Customer,Style,StructureStyle,Width,Square,Other) values ('" +
Convert.ToString(dt.Rows[i]["F1"]) + "','" + Convert.ToString(dt.Rows[i]["F2"]) + "','" + Convert.ToString(dt.Rows[i]["F3"]) + "','" +
Convert.ToString(dt.Rows[i]["F4"]) + "','" + Convert.ToString(dt.Rows[i]["F5"]) + "','" + Convert.ToString(dt.Rows[i]["F6"]) + "','" +
Convert.ToString(dt.Rows[i]["F7"]) + "','" + Convert.ToString(dt.Rows[i]["F8"]) + "','" + Convert.ToString(dt.Rows[i]["F9"]) + "')"; int j = accessHelper.ReturnSql(sql);
result = j++;
}
if (result > )
{
this.Close();
}
} /// <summary>
/// 读取excel指定页中的内容
/// </summary>
/// <param name="strExcelFileName">excel路径</param>
/// <returns></returns>
protected System.Data.DataTable GetDataTable(string strExcelFileName)
{
//DataSet myDs = new DataSet();
System.Data.DataTable dt = new System.Data.DataTable();
DataRow myRow;
object oMissing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Application application = new Microsoft.Office.Interop.Excel.Application(); ;
Microsoft.Office.Interop.Excel.Workbooks workbooks;
//Microsoft.Office.Interop.Excel.Worksheet worksheet;
Microsoft.Office.Interop.Excel.Workbook workbook;
workbooks = application.Workbooks;
workbook = returnworkbook(strExcelFileName, workbooks);
//worksheet = (Worksheet)workbook.Sheets[1]; for (int sheetint = ; sheetint < ; sheetint++)// DateTime.Now.Day Convert.ToDateTime(TextBox4.Text.Trim()).Day;// myBook.Worksheets.Count;//能得到sheet的数量
{
Worksheet mySheet = (Worksheet)workbook.Worksheets[sheetint];
int rowsint = mySheet.UsedRange.Cells.Rows.Count; //得到行数
int columnsint = mySheet.UsedRange.Cells.Columns.Count;//得到列数
if (sheetint == )
{
for (int i = ; i <= columnsint; i++)
{
dt.Columns.Add("F" + i.ToString(), System.Type.GetType("System.String"));
}
}
for (int i = ; i <= rowsint; i++) //第一行为标题,不读取
{
myRow = dt.NewRow();
for (int j = ; j <= columnsint; j++)
{ Range r = (Range)mySheet.Cells[i, j];
string strValue = r.Text.ToString(); string columnname = "F" + j.ToString();
myRow[columnname] = (strValue.Length == || strValue.Contains("#")) ? " " : strValue;
}
try
{
dt.Rows.Add(myRow);
}
catch { }
}
}
workbook.Close(oMissing, oMissing, oMissing);
workbooks.Close();
application.Quit(); return dt;
} private Workbook returnworkbook(string filename, Workbooks works) //这里是打一开一个工作表
{
Microsoft.Office.Interop.Excel.Workbook wk = works.Open(
filename, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
return wk;
} }

Winform导入Excel数据到数据库的更多相关文章

  1. 【转】 如何导入excel数据到数据库,并解决导入时间格式问题

    在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...

  2. .net导入excel数据到数据库中

    在开发过程中我们经常面临着需要将数据导出或者导入到系统中,例如一些生产管理系统,项目管理系统等等都会有这样的需求: 将excel数据到系统中思路:获取excel中每一行的数据,然后存入集合中,批量添加 ...

  3. 导入excel数据到数据库

    1.上传excel到服务器 jsp页面代码 <form action="actionname" method="post" id="form1& ...

  4. java 使用poi 导入Excel 数据到数据库

    由于我个人电脑装的Excel是2016版本的,所以这地方我使用了XSSF 方式导入 . 1先手要制定一个Excel 模板 把模板放入javaWeb工程的某一个目录下如图: 2模板建好了后,先实现模板下 ...

  5. PHP 导入Excel数据 到数据库

    /** * 导入excel * @throws \PHPExcel_Exception * @throws \PHPExcel_Reader_Exception */ public function ...

  6. Web服务器与数据库服务器分离 导入 Excel数据至数据库

    一般情况一般项目WEB服务器与数据库均部署在一台服务器,文件上传,数据导入在一台服务器完成.web服务器与数据库服务器分离,文件上传与数据导入将分布在两台服务器或多台服务器之间.本案例为两台服务器,具 ...

  7. java 对excel操作导入excel数据到数据库

    加入jar包jxl.jar ===================services层掉用工具类==================================== // 导入 public Lis ...

  8. 如何批量导入excel数据至数据库(MySql)--工具phpMyAdmin

    之前由于数据储存使用excel保存了所有数据,经过初步数据筛选,数据量近4000条.一条一条录入数据库显然是不可行的.以下是我所操作的步骤: 1.只保留excel的数据部分,去除第一行的具体说明 2. ...

  9. MYSQL 导入Excel数据到数据库中

    1,先把excel的数据整理整齐,如每列都要保持同样的格式:就一列一列的数据: 2,导出excel的数据为CSV格式,即把excel的数据另存为xxxx.csv;: 3,用EditPlus工具将xxx ...

随机推荐

  1. IDEA的database插件无法链接mysql的解决办法(08001错误)

    1.问题 首先先说问题,用navicat链接数据库正常,mysql控制台操作正常,但是用IDEA的数据库插件链接一直报 08001 错误,具体见下图: 错误:Connection to eshop@l ...

  2. SP375 QTREE - Query on a tree

    题意大意 给定\(n\)个点的树,边按输入顺序编号为\(1,2,...n-1\),要求作以下操作: CHANGE \(i\) \(t_i\) 将第\(i\)条边权值改为\(t_i\),QUERY \( ...

  3. EIGRP-6-EIGRP数据包

    EIGRP在与邻居路由器进行通信时,使用以下7种不同类型的数据包:   Hello包 确认包 更新包 查询包 响应包 SIA查询包 SIA响应包   更新包,查询包,响应包,SIA查询包和SIA响应包 ...

  4. java文件操作文件之csv

    直接上代码: @Test public void dowrite(){ String filePath = "D://test.csv"; try { File f = new F ...

  5. ubuntu16.0.4下修改MySQL的data目录之mysqld启动报错

    由于需要更换MySQL的data目录,更改完成后启动报错如下: apparmor="DENIED" operation="mknod" profile=&quo ...

  6. Django 04 模板标签(if、for、url、with、autoeacape、模板继承于引用、静态文件加载)

    Django 04 模板标签(if.for.url.with.autoeacape.模板继承于引用.静态文件加载) 一.if.for.url.with.autoescape urlpatterns = ...

  7. Windows应用程序未响应

    昨天在安装postgresql的扩展功能postgis的时候,stackbuilder刚打开就死掉,一直未响应,刚开始以为是内存的原因,后来发现并没有占用太多内存,最后打开vpn发现就可以了,原来是网 ...

  8. 如何设计企业移动应用 by宋凯

    移动应用设计内部培训 by宋凯 企业移动应用的特点:简约.效率.增强ERP与环境的结合.及时.安全.企业内社交. 一句话定义你的移动应用:然后围绕这句话来设计你的APP. 一:如何定义你的应用: 1, ...

  9. 【Java】在eclipse中使用maven进行项目构建 入门篇

    maven配置的简单说明 从\192.168.30.150\103.初级人员培训资料\新建文件夹 (2)\环境下提取apache-maven-3.0.4.zip压缩包,解压缩至E盘下 在E盘下新建&q ...

  10. HDU 5496——Beauty of Sequence——————【考虑局部】

    Beauty of Sequence Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Other ...