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

search for in the

odbc_binmode> <ODBC Unificado
Last updated: Fri, 22 Aug 2008

view this page in

odbc_autocommit

(PHP 4, PHP 5)

odbc_autocommitModifica o funcionamento do autocommit

Descrição

mixed odbc_autocommit ( resource $connection_id [, bool $OnOff ] )

Modifica o comportamento do autocommit.

Por padrão. o auto-commit esta em on para a conexão. Desabilitar o auto-commit é equivalente a começar uma transação.

Parâmetros

connection_id

O identificador de conexão.

OnOff

Se OnOff é TRUE, auto-commit é habilitado, se é FALSE auto-commit é desabilitado.

Valor Retornado

Sem o parâmetro OnOff , esta função retorna status do auto-commit para connection_id . Valor diferente de zero retorna se auto-commit está on, 0 se ele está off, ou FALSE se um erro ocorrer.

Se OnOff é definido, esta função retorna TRUE em sucesso e FALSE em falha.



odbc_binmode> <ODBC Unificado
Last updated: Fri, 22 Aug 2008
 
add a note add a note User Contributed Notes
odbc_autocommit
alvaro at demogracia dot com
06-Aug-2008 10:18
If you are using persistent connections (odbc_pconnect rather than odbc_connect) the next script that reuses the connection will inherit your changes to autocommit.
Orgied - info at orgied dot com
06-Apr-2005 08: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
21-Aug-2004 08: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 06: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 10: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 06:48
Example: set autocommit on

<?php

   $Link_ID
= odbc_connect("DSN", "user", "pass");

   
$Return = odbc_autocommit($Link_ID, FALSE);

?>
alonsoalonsocr at yahoo dot com
09-Oct-2001 12:09
When used in a odbc_fetch loop your selected resultset is lost and loop ends.

odbc_binmode> <ODBC Unificado
Last updated: Fri, 22 Aug 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites