public void GetExcelToDB(string tbName )
{
//将EXCEL导入数据库,tbname为传入的数据库表名
string filename = "";
string sqlTxt = "";
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.DefaultExt = "xls";
openFileDialog.Filter = "xls|*.xls";
openFileDialog.ShowDialog();
filename = openFileDialog.FileName;
if(filename == "")
return;
sqlTxt = "insert into "
+ tbName + " select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;IMEX=1;DATABASE="
+ filename
+ "','select * from [sheet1$]')";
SqlTransaction trans = null;//OPENROWSET
DB dbGetExcelToDB = new DB(); //DB 包含cmd,conn等的一个类 你可以自己改下代码
try
{
dbGetExcelToDB.GetConnction();
trans = dbGetExcelToDB.conn.BeginTransaction();
dbGetExcelToDB.cmd.Connection = dbGetExcelToDB.conn;
dbGetExcelToDB.cmd.Transaction = trans;
dbGetExcelToDB.cmd.CommandText = "delete from " + tbName;
dbGetExcelToDB.cmd.ExecuteNonQuery();
dbGetExcelToDB.cmd.CommandText = sqlTxt;
int rows = dbGetExcelToDB.cmd.ExecuteNonQuery();
trans.Commit();
MessageBox.Show("导入成功!共导入" + rows + "条记录!");
}
catch(SqlException ex)
{
trans.Rollback();
throw ex;
}
finally
{
dbGetExcelToDB.ShutDownConn();
} }
{
//将EXCEL导入数据库,tbname为传入的数据库表名
string filename = "";
string sqlTxt = "";
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.DefaultExt = "xls";
openFileDialog.Filter = "xls|*.xls";
openFileDialog.ShowDialog();
filename = openFileDialog.FileName;
if(filename == "")
return;
sqlTxt = "insert into "
+ tbName + " select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;IMEX=1;DATABASE="
+ filename
+ "','select * from [sheet1$]')";
SqlTransaction trans = null;//OPENROWSET
DB dbGetExcelToDB = new DB(); //DB 包含cmd,conn等的一个类 你可以自己改下代码
try
{
dbGetExcelToDB.GetConnction();
trans = dbGetExcelToDB.conn.BeginTransaction();
dbGetExcelToDB.cmd.Connection = dbGetExcelToDB.conn;
dbGetExcelToDB.cmd.Transaction = trans;
dbGetExcelToDB.cmd.CommandText = "delete from " + tbName;
dbGetExcelToDB.cmd.ExecuteNonQuery();
dbGetExcelToDB.cmd.CommandText = sqlTxt;
int rows = dbGetExcelToDB.cmd.ExecuteNonQuery();
trans.Commit();
MessageBox.Show("导入成功!共导入" + rows + "条记录!");
}
catch(SqlException ex)
{
trans.Rollback();
throw ex;
}
finally
{
dbGetExcelToDB.ShutDownConn();
} }
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货