PHP Conference Nagoya 2025

odbc_autocommit

(PHP 4, PHP 5, PHP 7, PHP 8)

odbc_autocommitAlterna o comportamento da autoconfirmação

Descrição

odbc_autocommit(Odbc\Connection $odbc, ?bool $enable = null): int|bool

Alterna o comportamento da autoconfirmação.

Por padrão, a autoconfirmação fica habilitada para uma conexão. Desabilitar a autoconfirmação é equivalente a iniciar uma transação.

Parâmetros

odbc

O objeto da conexão ODBC. Consulte odbc_connect() para obter detalhes.

enable

Se enable for igual a true, a autoconfirmação é habilitada, se for igual a false, a autoconfirmação é desabilitada. Se for igual a null, esta função retorna o status da auto confirmação para a conexão informada em odbc.

Valor Retornado

Com o parâmetro enable igual a null, esta função retorna o status da autoconfirmação para odbc. Um valor diferente de zero é retornado se a autoconfirmação estiver habilitada, 0 se estiver desabilitada ou false se um erro ocorrer.

Se enable não for nulo, esta função retorna true em caso de sucesso ou false em caso de falha.

Registro de Alterações

Versão Descrição
8.4.0 odbc agora espera uma instância de Odbc\Connection; anteriormente, esperava um resource.
8.3.0 enable agora pode ser nulo.

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês) 6 notes

up
1
JRog
21 years ago
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.
up
0
alvaro at demogracia dot com
16 years ago
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.
up
0
Joe
20 years ago
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!
up
-1
Orgied - info at orgied dot com
19 years ago
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.
up
-2
alonsoalonsocr at yahoo dot com
23 years ago
When used in a odbc_fetch loop your selected resultset is lost and loop ends.
up
-3
andrea dot galli at acotel dot com
21 years ago
Example: set autocommit on

<?php

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

$Return = odbc_autocommit($Link_ID, FALSE);

?>
To Top