Excel导出到Access

public partial class Form2 : Form
    {
        private string fileName;
        public Form2()
        {
            InitializeComponent();
            this.label1.Text = "";
        }

        public int OutEexcl(string str)
        {
            int cout;
            string connstr = "Provider=Microsoft.Jet.OleDb.4.0;";
            connstr += @"Data Source=" + Application.StartupPath + @"/DB/moban.mdb";
            OleDbConnection conn = new OleDbConnection(connstr);
            设置execl文件的路径
            string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + str + ";Extended Properties='Excel 8.0;IMEX=1'";
            OleDbConnection olconn = new OleDbConnection(strConn);
            OleDbDataAdapter oada = new OleDbDataAdapter("select * from [sheet1$]", olconn);
            DataSet ds = new DataSet();
            try
            {//填充数据集
                oada.Fill(ds, "[Sheet1$]");
                olconn.Close();
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    conn.Open();
                    string sql = "insert into xq(name1,name2,name3,name4,name5,name6,name7,name8,name9,name10,name11,name12,name13,name14) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
                    //SqlCommand comm = new SqlCommand(sql, conn);
                    OleDbCommand comm = new OleDbCommand(sql, conn);
                    comm.CommandType = CommandType.Text;
                    //读取execl文件的所有行
                    //这一行有数据,就填充到command对象的parameter参数中去
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P1", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name1"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P2", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name2"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P3", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name3"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P4", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name4"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P5", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name5"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P6", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name6"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P7", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name7"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P8", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name8"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P9", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name9"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P10", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name10"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P11", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name11"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P12", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name12"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P13", OleDbType.VarChar))).Value = ds.Tables[0].Rows[i]["name13"].ToString();
                    ((OleDbParameter)comm.Parameters.Add(new OleDbParameter("@P14", OleDbType.Boolean))).Value = ds.Tables[0].Rows[i]["name14"].ToString();

                    //将execl文件导入数据库
                    comm.ExecuteNonQuery();
                    comm.Dispose();
                    conn.Close();
                }
                cout = 1;
            }
            catch (Exception e)
            {
                cout = 0;
                this.label1.Text = "导入失败!";
                return cout;
            }
            finally
            {
                conn.Close();
            }
           
            this.label1.Text = "导入成功!";
            return cout;
        }

      

        private void button2_Click(object sender, EventArgs e)
        {
            if (fileName != null)
            {
                OutEexcl(fileName);
            }
        }

        private void btnOpen_Click(object sender, EventArgs e)
        {
            if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                fileName = this.openFileDialog1.FileName;
            }
        }
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值