Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sqlsrv_begin_transaction(3) [php man page]

SQLSRV_BEGIN_TRANSACTION(3)											       SQLSRV_BEGIN_TRANSACTION(3)

sqlsrv_begin_transaction - Begins a database transaction

SYNOPSIS
bool sqlsrv_begin_transaction (resource $conn) DESCRIPTION
The transaction begun by sqlsrv_begin_transaction(3) includes all statements that were executed after the call to sqlsrv_begin_transac- tion(3) and before calls to sqlsrv_rollback(3) or sqlsrv_commit(3). Explicit transactions should be started and committed or rolled back using these functions instead of executing SQL statements that begin and committ/roll back transactions. For more information, see SQLSRV Transactions. PARAMETERS
o $conn - The connection resource returned by a call to sqlsrv_connect(3). RETURN VALUES
Returns TRUE on success or FALSE on failure. EXAMPLES
Example #1 sqlsrv_begin_transaction(3) example The following example demonstrates how to use sqlsrv_begin_transaction(3) together with sqlsrv_commit(3) and sqlsrv_rollback(3). <?php $serverName = "serverNamesqlexpress"; $connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password"); $conn = sqlsrv_connect( $serverName, $connectionInfo); if( $conn === false ) { die( print_r( sqlsrv_errors(), true )); } /* Begin the transaction. */ if ( sqlsrv_begin_transaction( $conn ) === false ) { die( print_r( sqlsrv_errors(), true )); } /* Initialize parameter values. */ $orderId = 1; $qty = 10; $productId = 100; /* Set up and execute the first query. */ $sql1 = "INSERT INTO OrdersTable (ID, Quantity, ProductID) VALUES (?, ?, ?)"; $params1 = array( $orderId, $qty, $productId ); $stmt1 = sqlsrv_query( $conn, $sql1, $params1 ); /* Set up and execute the second query. */ $sql2 = "UPDATE InventoryTable SET Quantity = (Quantity - ?) WHERE ProductID = ?"; $params2 = array($qty, $productId); $stmt2 = sqlsrv_query( $conn, $sql2, $params2 ); /* If both queries were successful, commit the transaction. */ /* Otherwise, rollback the transaction. */ if( $stmt1 && $stmt2 ) { sqlsrv_commit( $conn ); echo "Transaction committed.<br />"; } else { sqlsrv_rollback( $conn ); echo "Transaction rolled back.<br />"; } ?> The above example will output something similar to: SEE ALSO
sqlsrv_commit(3), sqlsrv_rollback(3). PHP Documentation Group SQLSRV_BEGIN_TRANSACTION(3)

Check Out this Related Man Page

SQLSRV_FETCH_ARRAY(3)													     SQLSRV_FETCH_ARRAY(3)

sqlsrv_fetch_array - Returns a row as an array

SYNOPSIS
array sqlsrv_fetch_array (resource $stmt, [int $fetchType], [int $row], [int $offset]) DESCRIPTION
Returns the next available row of data as an associative array, a numeric array, or both (the default). PARAMETERS
o $stmt - A statement resource returned by sqlsrv_query or sqlsrv_prepare. o $fetchType - A predefined constant specifying the type of array to return. Possible values are SQLSRV_FETCH_ASSOC, SQLSRV_FETCH_NUMERIC, and SQLSRV_FETCH_BOTH (the default). A fetch type of SQLSRV_FETCH_ASSOC should not be used when consuming a result set with multiple columns of the same name. o $row - Specifies the row to access in a result set that uses a scrollable cursor. Possible values are SQLSRV_SCROLL_NEXT, SQL- SRV_SCROLL_PRIOR, SQLSRV_SCROLL_FIRST, SQLSRV_SCROLL_LAST, SQLSRV_SCROLL_ABSOLUTE and, SQLSRV_SCROLL_RELATIVE (the default). When this parameter is specified, the $fetchType must be explicitly defined. o $offset - Specifies the row to be accessed if the row parameter is set to SQLSRV_SCROLL_ABSOLUTE or SQLSRV_SCROLL_RELATIVE. Note that the first row in a result set has index 0. RETURN VALUES
Returns an array on success, NULL if there are no more rows to return, and FALSE if an error occurs. EXAMPLES
Example #1 Retrieving an associative array. <?php $serverName = "serverNameinstanceName"; $connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password"); $conn = sqlsrv_connect( $serverName, $connectionInfo ); if( $conn === false ) { die( print_r( sqlsrv_errors(), true)); } $sql = "SELECT FirstName, LastName FROM SomeTable"; $stmt = sqlsrv_query( $conn, $sql ); if( $stmt === false) { die( print_r( sqlsrv_errors(), true) ); } while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) { echo $row['LastName'].", ".$row['FirstName']."<br />"; } sqlsrv_free_stmt( $stmt); ?> Example #2 Retrieving a numeric array. <?php $serverName = "serverNameinstanceName"; $connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password"); $conn = sqlsrv_connect( $serverName, $connectionInfo ); if( $conn === false ) { die( print_r( sqlsrv_errors(), true)); } $sql = "SELECT FirstName, LastName FROM SomeTable"; $stmt = sqlsrv_query( $conn, $sql ); if( $stmt === false) { die( print_r( sqlsrv_errors(), true) ); } while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC) ) { echo $row[0].", ".$row[1]."<br />"; } sqlsrv_free_stmt( $stmt); ?> NOTES
Not specifying the $fetchType or explicity using the SQLSRV_FETCH_TYPE constant in the examples above will return an array that has both associative and numeric keys. If more than one column is returned with the same name, the last column will take precedence. To avoid field name collisions, use aliases. If a column with no name is returned, the associative key for the array element will be an empty string (""). SEE ALSO
sqlsrv_connect(3), sqlsrv_query(3), sqlsrv_errors(3), sqlsrv_fetch(3). PHP Documentation Group SQLSRV_FETCH_ARRAY(3)
Man Page