라이브러리
[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 명령이 실패하면, 트랜잭션을 롤백하여 이전 상태로 돌아갑니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.