Please Enable JavaScript!
Gon[ Enable JavaScript ]

C# Transaction 처리를 위한 예제

기타 언어/C# & MFC
반응형

C# Transaction 처리를 위한 예제 


using 문을 사용해서 연결객체를 인자로 넘기고 트랜잭션을 처리 할것이다.

아래는 그 예제에 대한 간단한 함수의 내용이다. 트랜잭션 클래스는 SqlTransaction 이며
SqlConnection 객체의 BeginTransaction 함수를 써서 시작한다. 그리고 리턴받은
SqlTrannsaction 객체로 Commit 함수를 호출해 실행한후 SqlConnection을 닫으면 된다.

public void TotalDBExecute()
{
    string updateSql = "UPDATE Categories SET CategoryName = 'Car' WHERE CategoryID = 10";
    string deleteSql = "DELETE Categories WHERE CategoryID = 10";
    string conn = @"Server=222.232.2.22;Database=test;user=testuser;password=1111;Integrated Security=SSPI;";

    using (SqlConnection con = new SqlConnection(conn))
    {
        con.Open();

        // SqlTrasaction 클래스의인스턴스생성
        SqlTransaction tran = con.BeginTransaction(); // 트랜잭션시작
        SqlCommand cmd = new SqlCommand();

        cmd.Connection = con;
        cmd.Transaction = tran; // 현재사용할트랜잭션객체지정

        try
        {
            cmd.CommandText = updateSql;// 쿼리지정
            cmd.ExecuteNonQuery(); // 실행

            cmd.CommandText = deleteSql;
            cmd.ExecuteNonQuery();

            tran.Commit(); // 트랜잭션commit
        }
        catch (Exception ex)
        {
            tran.Rollback(); // 에러발생시rollback
        }
    }
}
반응형
Posted by 녹두장군1
,