DataSet ds = new DataSet();
string cbid = "";
OleDbTransaction transaction = null;
try
{
//获取全部数据
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + excelFile + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
OleDbDataAdapter myCommand = null;
strExcel = string.Format("select * from [{0}$]", sheetName);
myCommand = new OleDbDataAdapter(strExcel, strConn);
myCommand.Fill(ds, sheetName); DataRow[] dr = ds.Tables[0].Select(); //定义一个DataRow数组 //如果目标表不存在则创建
//string strSql = string.Format("if object_id('{0}') is null create table {0}(", sheetName);
//foreach (System.Data.DataColumn c in ds.Tables[0].Columns)
//{
// strSql += string.Format("[{0}] varchar(255),", c.ColumnName);
//}
//strSql = strSql.Trim(',') + ")";
string strSql = "";
transaction = conn.BeginTransaction();
for (int i = 0; i < dr.Length; i++)
{
cbid = dr[i]["id"].ToString();
string cbnumber = dr[i]["内部编号"].ToString();
string cbprojectname = dr[i]["项目名称"].ToString();
// 我能保证insert语句可以执行没有问题,由于项目居多,这里省略掉了
strSql = "insert into JPX_SaCompeteBuilding "; OleDbCommand cmd = new OleDbCommand(strSql, conn, transaction);
//每次执行到这里就报错,数据库引擎找不到对象 JPX_SaCompeteBuilding
cmd.ExecuteNonQuery(); }
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback(); System.Windows.Forms.MessageBox.Show(ex.Message + "\n内部编号:" + cbid);
}
string cbid = "";
OleDbTransaction transaction = null;
try
{
//获取全部数据
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + excelFile + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
OleDbDataAdapter myCommand = null;
strExcel = string.Format("select * from [{0}$]", sheetName);
myCommand = new OleDbDataAdapter(strExcel, strConn);
myCommand.Fill(ds, sheetName); DataRow[] dr = ds.Tables[0].Select(); //定义一个DataRow数组 //如果目标表不存在则创建
//string strSql = string.Format("if object_id('{0}') is null create table {0}(", sheetName);
//foreach (System.Data.DataColumn c in ds.Tables[0].Columns)
//{
// strSql += string.Format("[{0}] varchar(255),", c.ColumnName);
//}
//strSql = strSql.Trim(',') + ")";
string strSql = "";
transaction = conn.BeginTransaction();
for (int i = 0; i < dr.Length; i++)
{
cbid = dr[i]["id"].ToString();
string cbnumber = dr[i]["内部编号"].ToString();
string cbprojectname = dr[i]["项目名称"].ToString();
// 我能保证insert语句可以执行没有问题,由于项目居多,这里省略掉了
strSql = "insert into JPX_SaCompeteBuilding "; OleDbCommand cmd = new OleDbCommand(strSql, conn, transaction);
//每次执行到这里就报错,数据库引擎找不到对象 JPX_SaCompeteBuilding
cmd.ExecuteNonQuery(); }
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback(); System.Windows.Forms.MessageBox.Show(ex.Message + "\n内部编号:" + cbid);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货