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

王朝学院·作者佚名  2009-12-18
窄屏简体版  字體: |||超大  

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航