zoukankan      html  css  js  c++  java
  • Transact-SQL随笔

    1.Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。

    2.SqlTransaction是c#类里面的事务对象,能保持数据库的数据统一性

    定義:事務(Transaction)是并發控制的單位,是用戶定義的一個操作序列。這些操作姚明都做,要么都不做,是一個不可分割的工作單位。通過事務,SQL Server能將邏輯相關的一組操作綁定在一起,以便服務器保持數據的完整性。

    Sqlconnection   conn=new   Sqlconnection(str); //鏈接DB
    Sqlcommand   cmd=conn.CreateCommand();   //創建執行SQL命令對象 
    SqlTransaction   ston;     //創建事務對象
    conn.open();     //打開鏈接
    Ston=Conn.BeginTransaction();   //開始事務
    cmd.Transaction=ston;    //為一個即將發生的事物指派對象
    try 

          
          cmd.executenonquery(); 
          
          cmd.ExecuteNonQuery();
          ......
          ston.commit();    //提交事務

    catch() 

        ston.RollBack();    //事務回滾
    }
     
    例子: protected void Page_Load(object sender, EventArgs e)
            {
              SqlConnection conn = new SqlConnectio("server=10.158.17.22\LITIANXIANG;uid=sa;pwd=tianxiang;database=test;");
                conn.Open();
                SqlTransaction tran = conn.BeginTransaction();
                SqlCommand cmd = conn.CreateCommand();
                cmd.Transaction = tran;
                try
                {
                    cmd.CommandText = "INSERT suggestion([Content],Reply,IsAnonymous,Lasteditby,Lasteditdt)VALUES('litianxiang','litianxiangReply',1,'litianxiang',getdate())";
                    cmd.ExecuteNonQuery();
     
                    cmd.CommandText = "UPDATE suggestion SET Content='jiangyingliang' where suggestionid='11'";
                    cmd.ExecuteNonQuery();
     
                    tran.Commit();
                }
                catch (Exception ex)
                {
                    tran.Rollback();
                    this.lbl.Text = ex.Message;
                }
                finally
                {
                    conn.Close();
                }
            }
  • 相关阅读:
    Django学习(文件上传与下载)
    Django学习(实现登录功能)
    Django学习(实现注册功能)
    Django学习(环境配置)
    Android-Universal-Image-Loader异步加载图片框架学习
    Android自定义控件_View的绘制流程
    Android自定义控件_Canvas分析
    属性方法介绍——View(1)
    Android平滑移动——Scroller类研究
    记录一个前端二级导航栏的淡入淡出效果
  • 原文地址:https://www.cnblogs.com/studymaster/p/3735734.html
Copyright © 2011-2022 走看看