using System.Configuration;
using System.Data.SqlClient;
namespace SZTZ.BLL
{
public class Transactions
{
public static bool Tran1(SZTZ.Model.HDXXB mhd)//用来素质拓展办公室审核活动时
{
string connectionString = ConfigurationManager.ConnectionStrings["menu"].ConnectionString;
string sql1 = "update HDXXB set SHZT=@shzt,SZSHYJ=@szshyj,SZSHSJ=@szshsj where HDBH=@hdbh";
string sql2 = "";
if(mhd.CYFS==1||mhd.CYFS==4||mhd.CYFS==0)//院级活动,校级直接参加活动
{
//为申报单位增加一条发布信息 FBZT 1表示为自己未发布 因为不存在上级发布
sql2 = "insert HDFBB(HDBH,JGBH,FBZT) values(@hdbh,@sbjg,1)"; }
if (mhd.CYFS == 2 || mhd.CYFS == 3)//校级逐级活动 是需要逐级发布的
{
//不考虑存在院级限制,每个院增加一条信息,
sql2 = "EXEC hdfb @hdbh,@sbjg";//执行存储过程 hfbb(活动编号,申报单位)
}
using (SqlConnection con = new SqlConnection(connectionString))
{
SqlCommand cmd1 = new SqlCommand();
cmd1.Connection = con;
cmd1.CommandText = sql1;
cmd1.Parameters.AddWithValue("shzt",mhd.SHZT);
cmd1.Parameters.AddWithValue("szshyj",mhd.SZSHYJ);
cmd1.Parameters.AddWithValue("szshsj", mhd.SJSHSJ);
cmd1.Parameters.AddWithValue("hdbh",mhd.HDBH);
SqlCommand cmd2 = new SqlCommand();
cmd2.Connection = con;
cmd2.CommandText = sql2;
cmd2.Parameters.AddWithValue("hdbh",mhd.HDBH);
cmd2.Parameters.AddWithValue("sbjg",mhd.SBJG);
con.Open();
SqlTransaction tran = con.BeginTransaction();
cmd1.Transaction = tran;
cmd2.Transaction = tran; try
{
cmd1.ExecuteNonQuery();
cmd2.ExecuteNonQuery();
tran.Commit();
return true;
}
catch (System.Exception ex)
{
tran.Rollback();
return false;
}
}
}
public static bool ss()
{
return false;
}
}
}代码如上,确定tran1的传入参数和sql1 sql2 里面的sql语句没问题,谁帮我看看 为啥执行tran1的时候执行的是catch
解决方案 »
- 程序题目 请高手解答,急~~~
- asp.net 方面截取字符串 帮忙解决下
- 提出一个问题,托管代码和非托管代码有什么最大的区别!请高手回答!
- 用什么打开.fxp文件,我用vf6.0打不开啊
- post 二进制图片怎样取值并还原为图片
- 哪位大哥有ASP.NET Starter Kits下载地址 啊?
- 菜鸟请教(急)怎样同步显示系统时间,并怎样从数据库读取最新的消息滚动显示
- 求救:在线等,立马给分!
- 我想学asp.net,什么环境、什么语言支持比较合适?
- request.querystring("")能传数组吗?
- 求分页例子,像百度那样的 123456789的那种
- PagerStyle.Mode有哪些枚举值啊。各个值的含义是什么
cmd1.Parameters.AddWithValue("szshyj",mhd.SZSHYJ);
cmd1.Parameters.AddWithValue("szshsj", mhd.SJSHSJ);
cmd1.Parameters.AddWithValue("hdbh",mhd.HDBH);
//给变量赋值,你的变量写的不对吧?
cmd1.Parameters.AddWithValue("@shzt",mhd.SHZT);
cmd1.Parameters.AddWithValue("@szshyj",mhd.SZSHYJ);
cmd1.Parameters.AddWithValue("@szshsj", mhd.SJSHSJ);
cmd1.Parameters.AddWithValue("@hdbh",mhd.HDBH);
cmd1.Parameters.AddWithValue("@szshyj",mhd.SZSHYJ);
cmd1.Parameters.AddWithValue("@szshsj", mhd.SJSHSJ);
cmd1.Parameters.AddWithValue("@hdbh",mhd.HDBH);