OleDbTransaction tran = con.BeginTransaction();
str = string.Format(@"insert into Fillcards (strOldNumber,strNew numbers,strCardName,strOriginal,strHandlingpeople) values('{0}','{1}','{2}','{3}','{4}')", dr[0], newCardNum, dr[1], dr[2], handlingPeople);
OleDbCommand com = new OleDbCommand(str, con);
com.ExecuteNonQuery();
com.Transaction = tran;
str = string.Format(@"update Newcards set strNumber = '{0}' where strIDCard = '{1}'",newCardNum,ID);
com = new OleDbCommand(str, con);
com.ExecuteNonQuery();
com.Transaction = tran;
try
{
tran.Commit();
return 1;
}
catch (Exception e)
{
tran.Rollback();
return 4;
}
finally
{
dr.Close();
}
编译器错误信息: CS1023: 嵌入的语句不能是声明或标记语句源错误: 行 82: //{
行 83: //开始事务
行 84: OleDbTransaction tran = con.BeginTransaction();
行 85: str = string.Format(@"insert into Fillcards (strOldNumber,strNew numbers,strCardName,strOriginal,strHandlingpeople) values('{0}','{1}','{2}','{3}','{4}')", dr[0], newCardNum, dr[1], dr[2], handlingPeople);
行 86: OleDbCommand com = new OleDbCommand(str, con);
str = string.Format(@"insert into Fillcards (strOldNumber,strNew numbers,strCardName,strOriginal,strHandlingpeople) values('{0}','{1}','{2}','{3}','{4}')", dr[0], newCardNum, dr[1], dr[2], handlingPeople);
OleDbCommand com = new OleDbCommand(str, con);
com.ExecuteNonQuery();
com.Transaction = tran;
str = string.Format(@"update Newcards set strNumber = '{0}' where strIDCard = '{1}'",newCardNum,ID);
com = new OleDbCommand(str, con);
com.ExecuteNonQuery();
com.Transaction = tran;
try
{
tran.Commit();
return 1;
}
catch (Exception e)
{
tran.Rollback();
return 4;
}
finally
{
dr.Close();
}
编译器错误信息: CS1023: 嵌入的语句不能是声明或标记语句源错误: 行 82: //{
行 83: //开始事务
行 84: OleDbTransaction tran = con.BeginTransaction();
行 85: str = string.Format(@"insert into Fillcards (strOldNumber,strNew numbers,strCardName,strOriginal,strHandlingpeople) values('{0}','{1}','{2}','{3}','{4}')", dr[0], newCardNum, dr[1], dr[2], handlingPeople);
行 86: OleDbCommand com = new OleDbCommand(str, con);
tran = con.BeginTransaction();
正确方法
str = string.Format(@"insert into Fillcards (strOldNumber,strNewnumbers,strCardName,strOriginal,strHandlingpeople) values('{0}','{1}','{2}','{3}','{4}')", dr[0].ToString(), newCardNum, dr[1].ToString(), dr[2].ToString(), handlingPeople);
OleDbCommand com = new OleDbCommand(str, con);
com.Transaction = tran;
com.ExecuteNonQuery();
str = string.Format(@"update Newcards set strNumber = '{0}' where strIDCard = '{1}'", newCardNum, ID);
com.CommandText = str;
com.ExecuteNonQuery();
tran.Commit();