public int ExecuteTrans(string[] sqlstrs)
{
SqlConnection conn=new SqlConnection(connstr);
SqlCommand cmd=new SqlCommand(); try
{
conn.Open();
}
catch(System.Data.SqlClient.SqlException e)
{
throw new Exception(e.Message+"\r\n connstr=\""+connstr+"\"");
} System.Data.SqlClient.SqlTransaction trans=conn.BeginTransaction();
try
{
cmd.Connection=conn;
cmd.Transaction=trans; foreach(string str in sqlstrs)
{
cmd.CommandText=str;
cmd.ExecuteNonQuery();
} trans.Commit();
return 0;
}
catch(System.Data.SqlClient.SqlException e)
{
trans.Rollback();
throw new Exception(e.Message+"\r\n sqlstr=\""+sqlstrs.ToString()+"\"");
}
finally
{
cmd.Dispose();
conn.Close();
} }
{
SqlConnection conn=new SqlConnection(connstr);
SqlCommand cmd=new SqlCommand(); try
{
conn.Open();
}
catch(System.Data.SqlClient.SqlException e)
{
throw new Exception(e.Message+"\r\n connstr=\""+connstr+"\"");
} System.Data.SqlClient.SqlTransaction trans=conn.BeginTransaction();
try
{
cmd.Connection=conn;
cmd.Transaction=trans; foreach(string str in sqlstrs)
{
cmd.CommandText=str;
cmd.ExecuteNonQuery();
} trans.Commit();
return 0;
}
catch(System.Data.SqlClient.SqlException e)
{
trans.Rollback();
throw new Exception(e.Message+"\r\n sqlstr=\""+sqlstrs.ToString()+"\"");
}
finally
{
cmd.Dispose();
conn.Close();
} }
public class xxx
{
}
System.Data.SqlClient.SqlTransaction myTran = conn.BeginTransaction();
sqlUpdateCommand1.Transaction = myTran;
sqlInsertCommand1.Transaction = myTran;
sqlDeleteCommand1.Transaction = myTran;
try
{
sqlDa.Update(dt,"customer");
myTran.Commit();
return true;
}
catch(System.Data.SqlClient.SqlException ex)
{
myTran.Rollback();
return false;
}
finally
{
conn.Close();
}
我的代码如下
private void 添加入库记录(参数)
{
string cmstr="insert into 入库记录 (数据库字段) values (参数)";
int ii=sqlData.OtherCommand(cmstr)>0;
}
public bool 产品入库(参数)
{
string cmstr="update 库存 set 数量=参数";
return sqlData.OtherCommand(cmstr)>0;
添加入库记录(参数);
}
我想在更新库存的同时建立入库记录
其中:"sqlData.OtherCommand(cmstr)>0"是"数据库连接类"中的方法通过返回值来判断是否执行.
{
//执行语句组
myTran.Commit();
}
catch
{
trans.Rollback();
}