161 lines
9.1 KiB
HTML
161 lines
9.1 KiB
HTML
|
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
<!DOCTYPE html
|
||
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
<html lang="en-us" xml:lang="en-us">
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||
|
<meta name="security" content="public" />
|
||
|
<meta name="Robots" content="index,follow" />
|
||
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
||
|
<meta name="DC.Type" content="reference" />
|
||
|
<meta name="DC.Title" content="SQLTransact - Commit or roll back transaction" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzadphdapi.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzadpefftrans.htm" />
|
||
|
<meta name="copyright" content="(C) Copyright IBM Corporation 1999, 2006" />
|
||
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1999, 2006" />
|
||
|
<meta name="DC.Format" content="XHTML" />
|
||
|
<meta name="DC.Identifier" content="rzadpfntrans" />
|
||
|
<meta name="DC.Language" content="en-us" />
|
||
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
|
<!-- US Government Users Restricted Rights -->
|
||
|
<!-- Use, duplication or disclosure restricted by -->
|
||
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
||
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
||
|
<title>SQLTransact</title>
|
||
|
</head>
|
||
|
<body id="rzadpfntrans"><a name="rzadpfntrans"><!-- --></a>
|
||
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
||
|
<h1 class="topictitle1">SQLTransact - Commit or roll back transaction</h1>
|
||
|
<div><div class="section"></div>
|
||
|
<div class="section"><h4 class="sectiontitle">Purpose</h4> <p><samp class="codeph">SQLTransact()</samp> commits
|
||
|
or rolls back the current transaction in the connection.</p>
|
||
|
<p>All changes
|
||
|
to the database performed on the connection since connect time or the previous
|
||
|
call to <samp class="codeph">SQLTransact()</samp> (whichever is the most recent) are
|
||
|
committed or rolled back.</p>
|
||
|
<p>If a transaction is active on a connection,
|
||
|
the application must call <samp class="codeph">SQLTransact()</samp> before it can disconnect
|
||
|
from the database.</p>
|
||
|
</div>
|
||
|
<div class="section"><h4 class="sectiontitle">Syntax</h4><pre>SQLRETURN SQLTransact (SQLHENV henv,
|
||
|
SQLHDBC hdbc,
|
||
|
SQLSMALLINT fType);</pre>
|
||
|
</div>
|
||
|
<div class="section"><h4 class="sectiontitle">Function arguments</h4>
|
||
|
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" width="100%" frame="hsides" border="1" rules="all"><caption>Table 1. SQLTransact arguments</caption><thead align="left"><tr><th align="left" valign="top" width="20%" id="d0e61">Data type</th>
|
||
|
<th align="left" valign="top" width="20%" id="d0e63">Argument</th>
|
||
|
<th align="left" valign="top" width="20%" id="d0e65">Use</th>
|
||
|
<th align="left" valign="top" width="40%" id="d0e67">Description</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody><tr><td align="left" valign="top" width="20%" headers="d0e61 ">SQLHDBC</td>
|
||
|
<td align="left" valign="top" width="20%" headers="d0e63 "><em>hdbc</em></td>
|
||
|
<td align="left" valign="top" width="20%" headers="d0e65 ">Input</td>
|
||
|
<td align="left" valign="top" width="40%" headers="d0e67 ">Database connection handle. <p>If <em>hdbc</em> is
|
||
|
set to SQL_NULL_HDBC, then <em>henv</em> must contain the environment handle
|
||
|
that the connection is associated with.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="20%" headers="d0e61 ">SQLHENV</td>
|
||
|
<td align="left" valign="top" width="20%" headers="d0e63 "><em>henv</em></td>
|
||
|
<td align="left" valign="top" width="20%" headers="d0e65 ">Input</td>
|
||
|
<td align="left" valign="top" width="40%" headers="d0e67 ">Environment handle. <p>If <em>hdbc</em> is
|
||
|
a valid connection handle, <em>henv</em> is ignored.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="20%" headers="d0e61 ">SQLSMALLINT</td>
|
||
|
<td align="left" valign="top" width="20%" headers="d0e63 "><em>fType</em></td>
|
||
|
<td align="left" valign="top" width="20%" headers="d0e65 ">Input</td>
|
||
|
<td align="left" valign="top" width="40%" headers="d0e67 ">The wanted action for the transaction. The
|
||
|
value for this argument must be one of: <ul><li>SQL_COMMIT</li>
|
||
|
<li>SQL_ROLLBACK</li>
|
||
|
<li>SQL_COMMIT_HOLD</li>
|
||
|
<li>SQL_ROLLBACK_HOLD</li>
|
||
|
</ul>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="section"><h4 class="sectiontitle">Usage</h4><div class="p">Completing a transaction with SQL_COMMIT or
|
||
|
SQL_ROLLBACK has the following effects: <ul><li>Statement handles are still valid after a call to <samp class="codeph">SQLTransact()</samp>.</li>
|
||
|
<li>Cursor names, bound parameters, and column bindings survive transactions.</li>
|
||
|
<li>Open cursors are closed, and any result sets that are pending retrieval
|
||
|
are discarded.</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
<p>Completing the transaction with SQL_COMMIT_HOLD or SQL_ROLLBACK_HOLD
|
||
|
still commits or rolls back the database changes, but does not cause cursors
|
||
|
to be closed.</p>
|
||
|
<p>If no transaction is currently active on the connection,
|
||
|
calling <samp class="codeph">SQLTransact()</samp> has no effect on the database server
|
||
|
and returns SQL_SUCCESS.</p>
|
||
|
<p><samp class="codeph">SQLTransact()</samp> might fail while
|
||
|
executing the COMMIT or ROLLBACK due to a loss of connection. In this case
|
||
|
the application might be unable to determine whether the COMMIT or ROLLBACK
|
||
|
has been processed, and a database administrator's help might be required.
|
||
|
Refer to the DBMS product information for more information about transaction
|
||
|
logs and other transaction management tasks.</p>
|
||
|
</div>
|
||
|
<div class="section"><h4 class="sectiontitle">Return codes</h4><ul><li>SQL_SUCCESS</li>
|
||
|
<li>SQL_ERROR</li>
|
||
|
<li>SQL_INVALID_HANDLE</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
<div class="section"><h4 class="sectiontitle">Diagnostics</h4>
|
||
|
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" width="100%" frame="hsides" border="1" rules="rows"><caption>Table 2. SQLTransact SQLSTATEs</caption><thead align="left"><tr><th align="left" valign="top" width="25%" id="d0e176">SQLSTATE</th>
|
||
|
<th align="left" valign="top" width="25%" id="d0e178">Description</th>
|
||
|
<th align="left" valign="top" width="50%" id="d0e180">Explanation</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody><tr><td align="left" valign="top" width="25%" headers="d0e176 "><strong>08</strong>003</td>
|
||
|
<td align="left" valign="top" width="25%" headers="d0e178 ">Connection not open</td>
|
||
|
<td align="left" valign="top" width="50%" headers="d0e180 ">The <em>hdbc</em> is not in a connected state.</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="25%" headers="d0e176 "><strong>08</strong>007</td>
|
||
|
<td align="left" valign="top" width="25%" headers="d0e178 ">Connection failure during transaction</td>
|
||
|
<td align="left" valign="top" width="50%" headers="d0e180 ">The connection associated with the <em>hdbc</em> fails
|
||
|
during the processing of the function during the processing of the function
|
||
|
and it cannot be determined whether the requested COMMIT or ROLLBACK occurs
|
||
|
before the failure.</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="25%" headers="d0e176 "><strong>58</strong>004</td>
|
||
|
<td align="left" valign="top" width="25%" headers="d0e178 ">System error</td>
|
||
|
<td align="left" valign="top" width="50%" headers="d0e180 ">Unrecoverable system error.</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="25%" headers="d0e176 "><strong>HY</strong>001</td>
|
||
|
<td align="left" valign="top" width="25%" headers="d0e178 ">Memory allocation failure</td>
|
||
|
<td align="left" valign="top" width="50%" headers="d0e180 ">The driver is unable to allocate memory required
|
||
|
to support the processing or completion of the function.</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="25%" headers="d0e176 "><strong>HY</strong>012</td>
|
||
|
<td align="left" valign="top" width="25%" headers="d0e178 ">Transaction operation state that is not valid</td>
|
||
|
<td align="left" valign="top" width="50%" headers="d0e180 ">The value specified for the argument <em>fType</em> is
|
||
|
neither SQL_COMMIT nor SQL_ROLLBACK.</td>
|
||
|
</tr>
|
||
|
<tr><td align="left" valign="top" width="25%" headers="d0e176 "><strong>HY</strong>013 <strong>*</strong></td>
|
||
|
<td align="left" valign="top" width="25%" headers="d0e178 ">Memory management problem</td>
|
||
|
<td align="left" valign="top" width="50%" headers="d0e180 ">The driver is unable to access memory required
|
||
|
to support the processing or completion of the function.</td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="section"><h4 class="sectiontitle">Example</h4></div>
|
||
|
<div class="example" id="rzadpfntrans__xmtrans"><a name="rzadpfntrans__xmtrans"><!-- --></a><p>Refer to the example
|
||
|
in <a href="rzadpfnfetch.htm">SQLFetch - Fetch next row</a></p>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div>
|
||
|
<div class="familylinks">
|
||
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzadphdapi.htm" title="This topic provides a description of each CLI function.">DB2 UDB CLI functions</a></div>
|
||
|
</div>
|
||
|
<div class="relconcepts"><strong>Related concepts</strong><br />
|
||
|
<div><a href="rzadpefftrans.htm">Effects of calling SQLTransact() in a DB2 UDB CLI application</a></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|