PHP: odbc_autocommit - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

odbc_binmode ODBC

Last updated: Fri, 26 Jan 2007

view this page in

# odbc_autocommit

(PHP 3 >= 3.0.6, PHP 4, PHP 5)

odbc_autocommit -- Toggle autocommit behaviour

## Description

mixed odbc_autocommit ( resource connection_id [, bool OnOff] )

Without the `OnOff` parameter, this function returns auto-commit status for `connection_id`. Non-zero is returned if auto-commit is on, 0 if it is off, or `FALSE` if an error occurs.

If `OnOff` is `TRUE`, auto-commit is enabled, if it is `FALSE` auto-commit is disabled. Returns `TRUE` on success, `FALSE` on failure.

By default, auto-commit is on for a connection. Disabling auto-commit is equivalent with starting a transaction.

See also odbc_commit() and odbc_rollback().

add a note User Contributed Notes
odbc_autocommit
Orgied - info at orgied dot com
05-Apr-2005 11:58
`Hi (i'm belgian then sorry for my english).
I think you can do more simple to check the errors :
$conn = odbc_connect($odbc,$user,$password)
or die($error);
odbc_autocommit($conn, FALSE);
odbc_exec($conn, $query1);
odbc_exec($conn, $query2);
if (!odbc_error())
odbc_commit($conn);
else
odbc_rollback($conn);
odbc_close($conn);
I'm not sure it's better to use odbc_error() than
odbc_error($conn). It seems to be the same result.`
Ron
20-Aug-2004 11:51
`using autocommit functionality to rollback transactions in a "workspace"
<?php
$conn = odbc_connection("$DSN","USER","PASS");
//turns off autocommit
odbc_autocommit($conn,FALSE);
$query1 = "some SQL";
$query2 = "some more SQL";
$ErrorCount = 0;
//if odbc_exec fails it will increment the $ErrorCount
$result = odbc_exec($conn,$query1) or $ErrorCount++;
$result2 = odbc_exec($conn,$query2) or $ErrorCount++;
//checking for errors, commit if none, rollback else
if ($Errorcount == 0){
odbc_commit($conn);
echo "transaction successful";
}
else{
odbc_rollback($conn);
echo "there were errors processing the transaction.
No changes were made to the database";
}
odbc_close($conn);
?>
Cheers,
Ron`
Joe
26-May-2004 09:01
`It seems that example made by andrea dot galli at acotel dot com works exactly the contrary.
It sets autocommit OFF and NOT ON like it's written inside note!`
JRog
25-Jun-2003 01:30
`If a transaction is started (autocommit disabled) while there is an active result id on the connection, odbc_autocommit will post a warning (Cannot set autocommit). Use odbc_free_result to clear the result id's or start the transaction before you execute the SQL.`
andrea dot galli at acotel dot com
28-Apr-2003 09:48
`Example: set autocommit on
<?php
$Link_ID = odbc_connect("DSN", "user", "pass");
$Return = odbc_autocommit($Link_ID, FALSE);
?>`
alonsoalonsocr at yahoo dot com
08-Oct-2001 03:09
`When used in a odbc_fetch loop your selected resultset is lost and loop ends.`
add a note
odbc_binmode ODBC

Last updated: Fri, 26 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 11:33:19 2007 PST