ImportToSqlServer;GetSheetNames;InsertRows

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

namespace ImportExcelintoSQLServer
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string strXLSPath = "K:/Study/ImportExcelintoSQLServer/ExcelTestData.xlsx";
            string excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" +
                strXLSPath + ";" + "Extended Properties='Excel 12.0;HDR=NO/'";

            // Create Connection to Excel Workbook
            using (OleDbConnection connection = new OleDbConnection(excelConnectionString))
            {
                OleDbCommand command = new OleDbCommand("Select * FROM [myRange]", connection);
                connection.Open();

                // Create DbDataReader to Data Worksheet
                using (OleDbDataReader dr = command.ExecuteReader())
                {
                    // SQL Server Connection String
                    string sqlConnectionString = "Data Source=127.0.0.1;Initial Catalog=MVCMUSICSTORE;"
                        +"Integrated Security=True";
                    // Bulk Copy to SQL Server
                    using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString))
                    {
                        bulkCopy.DestinationTableName = "ExcelData";
                        bulkCopy.WriteToServer(dr);
                    }
                }
                MessageBox.Show("导入数据完成!");

            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            string strXLSPath = "K:/Study/ImportExcelintoSQLServer/ExcelTestData.xlsx";
            string excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" +
                strXLSPath + ";" + "Extended Properties='Excel 12.0;HDR=NO/'";

            // Create Connection to Excel Workbook
            using (OleDbConnection connection = new OleDbConnection(excelConnectionString))
            {
                OleDbCommand command = new OleDbCommand("Select * FROM [myRange]", connection);
                connection.Open();

                //show SheetName List
                DataTable schemaTable = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
                    new object[] { null, null, null, "TABLE" });

                int i = 0;
                //Add the sheet name to the string array.
                foreach (DataRow row in schemaTable.Rows)
                {
                    checkedListBox1.Items.Add(row["TABLE_NAME"].ToString());
                    i++;
                }
            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            string strXLSPath = "K:/Study/ImportExcelintoSQLServer/ExcelTestData.xlsx";
            string excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" +
                strXLSPath + ";" + "Extended Properties='Excel 12.0;HDR=NO/'";

            OleDbConnection connection = new OleDbConnection(excelConnectionString);
            string sqlCreate = "CREATE TABLE TestSheet ([ID] INTEGER,[Username] VarChar,[UserPwd] VarChar)";
            OleDbCommand cmd = new OleDbCommand(sqlCreate, connection);
            //创建Excel文件:C:/test.xls
            connection.Open();
            //创建TestSheet工作表
            cmd.ExecuteNonQuery();
            //添加数据
            cmd.CommandText = "INSERT INTO TestSheet VALUES(1,'elmer','password')";
            cmd.ExecuteNonQuery();
            //关闭连接
            connection.Close();
            MessageBox.Show("插入数据完成!");

        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值