zoukankan      html  css  js  c++  java
  • ASP.NET 回滚事务

    SqlConnection con =new SqlConnection(ConnectionDb.conStr);//获取数据库连接
    con.Open();//打开连接
    SqlTransaction sqltra = con.BeginTransaction();//开始事务
    SqlCommand cmd =new SqlCommand();//实例化
    cmd.Connection = con;//获取数据连接
    cmd.Transaction = sqltra;//,在执行SQL时,
    try
    {
    string sql ="insert into OA_MEETING(meeting_id,meeting_name,meeting_title,start_time,end_time,announce_time,explain,reg_emp_id,emc_emp_id,par_emp_id,rep_emp_id,participate,MEETING_TYPE,PROJ_ID,WORK_ID)values('"+ id +"',N'"+ meetname +"',N'"+ meettitle +"','"+ starttime +"','"+ endtime +"',N'"+ djtime +"',N'"+ meetinfo +"','"+ empid +"','"+ meetperson +"','"+ lname +"','"+ writer +"','"+ ccname +"','"+ hidsort.Value +"','"+ proid +"','"+ workid +"')";
    cmd.CommandText
    = sql;
    cmd.ExecuteNonQuery();

    //string meetid = id;
    int size =0;
    HttpFileCollection files
    = HttpContext.Current.Request.Files;
    //遍历上传文件窗体所有Html控件
    foreach (string NameId in Request.Form)
    {
    //找到控件ID名前四位为"txt_"的文件说明文本框
    if (NameId.Substring(0, 4) =="ttx_")
    {
    //获取文本说明
    if (Request.Form[NameId] !="")
    {
    string Explain = Request.Form[NameId];//获取txt文本说明

    HttpPostedFile pstfile
    = files["fil_"+ NameId.Substring(4)];
    string fileName ="";
    string fileExtension ="";
    fileName
    = System.IO.Path.GetFileName(pstfile.FileName);//上传的文件全名
    fileExtension = System.IO.Path.GetExtension(fileName);//扩展名
    string NewName = fileName.Remove(fileName.LastIndexOf("."));//去掉后缀名的文件名
    string sql1 ="select isnull(max(app_id),0) from OA_MEETING_APPENDIX";

    int idd = Convert.ToInt32(objConnction.getString(sql1)) +1;
    ua.Folder_Exists(
    "Meeting");
    string filepath ="..\\AtthFiles\\Meeting\\Meeting_"+ idd.ToString() + fileExtension;
    string sqlstr1 ="insert into OA_MEETING_APPENDIX(APP_ID,MEETING_ID,EXPLAIN,APP_PATH) values('"+ idd +"','"+ id +"',N'"+ Explain +"',N'"+ filepath +"')";
    cmd.CommandText
    = sqlstr1;

    int num = cmd.ExecuteNonQuery();
    if (num >0)
    {
    pstfile.SaveAs(Server.MapPath(
    "..\\AtthFiles\\Meeting\\Meeting_"+ idd.ToString() + fileExtension));
    size
    = pstfile.ContentLength /1024;
    objDocument.InsertDoc(
    5, idd, Explain, "", "", DateTime.Now.ToString("yyyy-MM-dd"), Convert.ToInt32(HempID.Value), filepath, size, hidwork.Value, hidpro.Value);
    }
    }
    }
    }
    sqltra.Commit();
    }
    catch(Exception ex)
    {
    sqltra.Rollback();
    }
  • 相关阅读:
    微信小程序scroll-view不动的处理
    AndoridSQLite数据库开发基础教程(4)
    Andorid SQLite数据库开发基础教程(3)
    Andorid SQLite数据库开发基础教程(2)
    Visual Studio 2019更新到16.2.3
    密码的复杂化#个人隐私保护系列#
    Nessus更新到8.6.0
    Visual Studio 2019更新到16.2.2
    Maltego更新到4.2.6
    Visual Studio 2019更新到16.2.1
  • 原文地址:https://www.cnblogs.com/LYshuqian/p/2161682.html
Copyright © 2011-2022 走看看