라이브러리

[PHP] sqlsrv_begin_transaction - 데이터베이스 트랜잭션을 시작합니다.




SQLSRV Begin Transaction


PHP의 `sqlsrv_begin_transaction` 함수는 SQL Server 데이터베이스와의 연결을 통해 트랜잭션을 시작합니다. 트랜잭션은 하나 이상의 SQL 명령을 하나의 단위로 처리하는 것을 의미하며, 성공적으로 완료되면 트랜잭션은 COMMIT을 통해 확정되고, 실패하면 ROLLBACK을 통해 취소됩니다.

사용 방법


`sqlsrv_begin_transaction` 함수는 다음과 같은 형식으로 사용됩니다.

#hostingforum.kr
php

bool sqlsrv_begin_transaction ( resource $conn )



* `$conn` : SQL Server와의 연결 리소스입니다.

예제


#hostingforum.kr
php

// SQL Server와의 연결을 설정합니다.

$serverName = "your_server_name";

$connectionInfo = array("Database"=>"your_database", "UID"=>"your_username", "PWD"=>"your_password");

$conn = sqlsrv_connect($serverName, $connectionInfo);



if (!$conn) {

    echo "Connection could not be established.
";

    exit;

}



// 트랜잭션을 시작합니다.

sqlsrv_begin_transaction($conn);



// SQL 명령을 실행합니다.

$stmt = sqlsrv_query($conn, "INSERT INTO your_table (column1, column2) VALUES ('value1', 'value2')");

if (!$stmt) {

    echo "Error: " . sqlsrv_get_last_message() . "
";

    sqlsrv_rollback($conn);

    exit;

}



// SQL 명령을 실행합니다.

$stmt = sqlsrv_query($conn, "INSERT INTO your_table (column1, column2) VALUES ('value3', 'value4')");

if (!$stmt) {

    echo "Error: " . sqlsrv_get_last_message() . "
";

    sqlsrv_rollback($conn);

    exit;

}



// 트랜잭션을 커밋합니다.

sqlsrv_commit($conn);



// 트랜잭션을 롤백합니다.

// sqlsrv_rollback($conn);



sqlsrv_close($conn);



참고


* `sqlsrv_begin_transaction` 함수는 트랜잭션을 시작하기 전에 호출해야 합니다.
* `sqlsrv_commit` 함수는 트랜잭션을 확정하기 위해 호출해야 합니다.
* `sqlsrv_rollback` 함수는 트랜잭션을 취소하기 위해 호출해야 합니다.
* 트랜잭션을 롤백하면 이전 상태로 돌아갑니다.

이 예제는 트랜잭션을 시작하고, 두 개의 SQL 명령을 실행한 후 트랜잭션을 커밋하는 것을 보여줍니다. 만약 두 번째 SQL 명령이 실패하면, 트랜잭션을 롤백하여 이전 상태로 돌아갑니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 132 페이지

검색

게시물 검색