红色的地方为错误出现的地方!!!
public bool UpdateStockCount(string stockid, int stockcount, int operation)
{
//打开连接,并执行SqlCommand命令
using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
{
//打开数据库连接
conn.Open();
//创建与连接关联的SqlCommand
SqlCommand mycmd = conn.CreateCommand();
//获取更新需要的参数列表
SqlParameter[] memberParms = GetStockParameters();
//给参数赋值
memberParms[0].Value = stockid;
//判断当操作为退货时,数量应该是负数
if (operation == 1)
memberParms[1].Value = -stockcount;
else
memberParms[1].Value = stockcount;
memberParms[2].Value = DateTime.Now;
//将参数添加到SqlCommand命令中
foreach (SqlParameter parm in memberParms)
mycmd.Parameters.Add(parm);
//开始数据库事务
SqlTransaction trans = conn.BeginTransaction("StockTrans");
try
{
//设置SqlCommand属性
mycmd.Connection = conn;
mycmd.Transaction = trans;
mycmd.CommandType = CommandType.Text;
mycmd.CommandText = SQL_UPDATE_STOCKCOUNT;
mycmd.ExecuteNonQuery(); //判断选择的是那种操作类型:0-销售,1-退货,2-反馈
switch (operation)
{
case 0:
mycmd.CommandText = SQL_INSERT_SALE;
break;
case 1:
mycmd.CommandText = SQL_INSERT_BACK;
break;
case 2:
mycmd.CommandText = SQL_INSERT_GIFT;
break;
}
mycmd.ExecuteNonQuery();
//执行事务
trans.Commit();
//清空参数列表
mycmd.Parameters.Clear();
return true;
}
catch
{
//如果发生错误,则事务回滚
trans.Rollback();
return false;
} }
}
public bool UpdateStockCount(string stockid, int stockcount, int operation)
{
//打开连接,并执行SqlCommand命令
using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
{
//打开数据库连接
conn.Open();
//创建与连接关联的SqlCommand
SqlCommand mycmd = conn.CreateCommand();
//获取更新需要的参数列表
SqlParameter[] memberParms = GetStockParameters();
//给参数赋值
memberParms[0].Value = stockid;
//判断当操作为退货时,数量应该是负数
if (operation == 1)
memberParms[1].Value = -stockcount;
else
memberParms[1].Value = stockcount;
memberParms[2].Value = DateTime.Now;
//将参数添加到SqlCommand命令中
foreach (SqlParameter parm in memberParms)
mycmd.Parameters.Add(parm);
//开始数据库事务
SqlTransaction trans = conn.BeginTransaction("StockTrans");
try
{
//设置SqlCommand属性
mycmd.Connection = conn;
mycmd.Transaction = trans;
mycmd.CommandType = CommandType.Text;
mycmd.CommandText = SQL_UPDATE_STOCKCOUNT;
mycmd.ExecuteNonQuery(); //判断选择的是那种操作类型:0-销售,1-退货,2-反馈
switch (operation)
{
case 0:
mycmd.CommandText = SQL_INSERT_SALE;
break;
case 1:
mycmd.CommandText = SQL_INSERT_BACK;
break;
case 2:
mycmd.CommandText = SQL_INSERT_GIFT;
break;
}
mycmd.ExecuteNonQuery();
//执行事务
trans.Commit();
//清空参数列表
mycmd.Parameters.Clear();
return true;
}
catch
{
//如果发生错误,则事务回滚
trans.Rollback();
return false;
} }
}
mycmd.CommandText = SQL_UPDATE_STOCKCOUNT;
mycmd.CommandText = "SQL_UPDATE_STOCKCOUNT";