打开EXCEL表格,批量写入到数据库

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Data.OleDb;
using System.Data.SqlClient;

namespace WindowsFormsApplication5
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        DataTable dt = new DataTable();
        string connString = "Data Source=.;Initial Catalog=NIU123;Integrated Security=True";
        SqlConnection conn;
//选择打开EXCEL表格
        private void button1_Click(object sender, EventArgs e)
        {
            System.Windows.Forms.OpenFileDialog fd = new OpenFileDialog();
            if (fd.ShowDialog() == DialogResult.OK)//调用这个方法打开选择对话框,并判断是否打开成功。
            {
                string fileName = fd.FileName;//把选种文件路径赋值给fileName.
                bind(fileName);//调用这个方法
            }
         }
            private void bind(string fileName)
        {
            //连接字符串
            string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 12.0;HDR=YES\"";
            //SQL语句
            string strComm = "SELECT *  FROM [Sheet1$]";
            OleDbDataAdapter da = new OleDbDataAdapter(strComm, strConn);
            DataSet ds = new DataSet();
            try
            {
                da.Fill(ds,"SD");
                dt = ds.Tables["SD"];
                this.dataGridView1.DataSource = dt;
            }
            catch (Exception err)
            {
                MessageBox.Show("操作失败!" + err.ToString());
            }
        }
//写入到数据库
        private void button2_Click(object sender, EventArgs e)        
        {
            conn = new SqlConnection(connString);
            conn.Open();  
            if (dataGridView1.Rows.Count > 0)  
            {  
                DataRow dr = null;  
                for (int i = 0; i < dt.Rows.Count; i++)  
                {  
                    dr = dt.Rows[i];  
                    insertToSql(dr);  
                }  
                conn.Close();  
                MessageBox.Show("导入成功!");  
            }  
            else 
            {  
                MessageBox.Show("没有数据!");  
            }  
        }  
         private void insertToSql(DataRow dr)  
        {  
            //excel表中的列名和数据库中的列名一定要对应  
            string name = dr["UserName"].ToString();  
            string password = dr["UserPassword"].ToString();  

            string sql = "insert into Table_20200625 values('" + name + "','" + password + "')";           
            SqlCommand cmd = new SqlCommand(sql, conn);             
            cmd.ExecuteNonQuery();  
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值