首页 > 数据库 > SQL Server > 正文

Excel中数据导入到SQL Server数据库

2024-08-31 00:53:17
字体:
来源:转载
供稿:网友
using System.Data.SqlClient;

using System.Data.OleDb;

  PRivate void tsmiImportTeacherInfo_Click(object sender, EventArgs e)
        {
            DataSet ds;
            if (ofdImport.ShowDialog()==DialogResult.OK)
            {
                ds = ImportExcel(this.ofdImport.FileName);  //获得Excel
            }
            else
            {
                return;
            }
            int odr = 0;
            SqlConnection cn = db.sqlconnection();
            try
            {
                cn.Open();
                string str = "insert into Teacher (TeacherId,Pwd,eachCourse,TeacherName) values(@TeacherId,@Pwd,@TeachCourse,@TeacherName)";
                SqlCommand cmd = db.sqlcommand(str,cn);

                int dsLength = ds.Tables[0].Rows.Count;   //获得Excel中数据长度  

                for (int i = 0; i < dsLength; i++)
                {
                    cmd.Parameters.Add("@TeacherId", SqlDbType.VarChar, 50).Value = ds.Tables["Teacher "].Rows[i][0];
                    cmd.Parameters.Add("@Pwd", SqlDbType.VarChar, 50).Value = ds.Tables["Teacher "].Rows[i][1];
                    cmd.Parameters.Add("@TeachCourse", SqlDbType.VarChar, 300).Value = ds.Tables["Teacher "].Rows[i][2];
                    cmd.Parameters.Add("@TeacherName", SqlDbType.VarChar, 50).Value = ds.Tables["Teacher "].Rows[i][3];

                    odr = cmd.ExecuteNonQuery();//提交
                    cmd.Parameters.Clear();    //清除前的赋值
                }

                //如果查到了数据,才使控制分页按钮生效  
                if (odr > 0)
                {
                    MessageBox.Show("导入成功!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                cn.Close();
            }
            catch (Exception ex)
            {
                
                throw ex;
            }
            
        }

        public static DataSet ImportExcel(string file)
        {
            FileInfo FileInfo = new FileInfo(file);
            if (!FileInfo.Exists)
            {
                return null;
            }

            string strcn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + file + ";Extended Properties='Excel 12.0 xml;HDR=YES;IMEX=1;'";

            OleDbConnection cn = new OleDbConnection(strcn);
            DataSet ds = new DataSet();
            try
            {
                cn.Open();
                string strcmd = "select * from [Sheet1$]";
                OleDbDataAdapter da = new OleDbDataAdapter(strcmd,cn);
                da.Fill(ds, "Teacher ");
                return ds;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/crx05/archive/2009/12/17/5023589.aspx
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表