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

search for in the

odbc_binmode> <Funciones ODBC
[edit] Last updated: Fri, 25 May 2012

view this page in

odbc_autocommit

(PHP 4, PHP 5)

odbc_autocommitActiva el comportamiento automático de envío

Descripción

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

Activa el comportamiento automático de envío.

Por defecto, el auto envío está activado en una conexión. Deshabilitar el auto envío es equivalente a iniciar una transacción.

Parámetros

connection_id

El conector identificador ODBC, ver odbc_connect() para más información.

OnOff

Si OnOff es TRUE, el auto envío está habilitado, si es FALSE el auto envío está deshabilitado.

Valores devueltos

Sin el parámetro OnOff, está función devuelve el estado de auto envío para connection_id. Se devuelve un valor distinto de cero si el auto envío está activado, 0 si está desactivado, o FALSE si se produjo un error.

Si está establecido OnOff, esta función devolverá TRUE si se tuvo éxito y FALSE si falló.

Ver también



odbc_binmode> <Funciones ODBC
[edit] Last updated: Fri, 25 May 2012
 
add a note add a note User Contributed Notes odbc_autocommit
alvaro at demogracia dot com 05-Aug-2008 07: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 05-Apr-2005 05: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 05: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 03: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 07: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 03: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 09:09
When used in a odbc_fetch loop your selected resultset is lost and loop ends.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites