Página 1 de 1

TOdbcDatasource:lAutoCommit

Publicado: Jue Oct 19, 2006 6:20 pm
por miguel
Hola:
En la clase TAdoDataSource, esta propiedad no existe, cual seria la
manera de suplir este funcionamiento con la nueva clase tAdoDataSource.
Quizas ???
TAdoDataSource:BeginTrans()
.... AddNews, Edits ....
.... Updates ....
TAdoDataSource:CommitTrans()
Saludos. Miguel A. Torrellas

TOdbcDatasource:lAutoCommit

Publicado: Jue Oct 19, 2006 8:03 pm
por ignacio
Miguel,
En ADO, a no ser de que pongas una transacción es como si lAutoCommit
estuviese siempre a verdadero. Justo como lo indicas.
Un saludo
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Miguel A. Torrellas" <miguel@torrellas.net> escribió en el mensaje
news:4537a5c3$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola:
>
> En la clase TAdoDataSource, esta propiedad no existe, cual seria la manera
> de suplir este funcionamiento con la nueva clase tAdoDataSource.
>
> Quizas ???
>
> TAdoDataSource:BeginTrans()
> ... AddNews, Edits ....
> ... Updates ....
> TAdoDataSource:CommitTrans()
>
> Saludos. Miguel A. Torrellas

TOdbcDatasource:lAutoCommit

Publicado: Jue Oct 19, 2006 8:20 pm
por jose.luis
Miguel,
>
> En la clase TAdoDataSource, esta propiedad no existe, cual seria la manera
> de suplir este funcionamiento con la nueva clase tAdoDataSource.
>
> Quizas ???
>
> TAdoDataSource:BeginTrans()
> ... AddNews, Edits ....
> ... Updates ....
> TAdoDataSource:CommitTrans()
>
Son dos conceptos diferentes.
Por una parte la transacción protege las operaciones que hagas de
modificaciones por parte de otras conexiones al servidor sql. Es decir,
mientras tengas abierta una transacción nadie puede alterar los datos que tu
estás modificando. Esa transacción la puedes cerrar completando el proceso
(committrans) o volviendo al estado inicial justo antes de la transacción
(rollbacktrans).
Sin embargo la propiedad lAutoCommit del odbcDataSource casi que no tiene su
equivalente en ADO a no ser que abras un recordset en modo batch. ADO,
cuando abres un recordset actualizable, cada modicación que haces en el
recordset la envía al servidor justo después de hacer una llamada al método
update. Sin embargo, puedes abrir ese mismo recordset en modo batch y hacer
todas las modificaciones que quieras. Haces todos los updates que sean
necesarios. Solo se actualizan en modo local. Solo subirás al servidor
esos cambios (y de una sola vez) haciendo un updatebatch.
Saludos,
José Luis Capel

TOdbcDatasource:lAutoCommit

Publicado: Vie Oct 20, 2006 4:33 pm
por miguel
Gracias por tus aclaraciones.
José Luis Capel escribió:
> Miguel,
>
>> En la clase TAdoDataSource, esta propiedad no existe, cual seria la manera
>> de suplir este funcionamiento con la nueva clase tAdoDataSource.
>>
>> Quizas ???
>>
>> TAdoDataSource:BeginTrans()
>> ... AddNews, Edits ....
>> ... Updates ....
>> TAdoDataSource:CommitTrans()
>>
>
>
> Son dos conceptos diferentes.
>
> Por una parte la transacción protege las operaciones que hagas de
> modificaciones por parte de otras conexiones al servidor sql. Es decir,
> mientras tengas abierta una transacción nadie puede alterar los datos que tu
> estás modificando. Esa transacción la puedes cerrar completando el proceso
> (committrans) o volviendo al estado inicial justo antes de la transacción
> (rollbacktrans).
>
> Sin embargo la propiedad lAutoCommit del odbcDataSource casi que no tiene su
> equivalente en ADO a no ser que abras un recordset en modo batch. ADO,
> cuando abres un recordset actualizable, cada modicación que haces en el
> recordset la enví­a al servidor justo después de hacer una llamada al método
> update. Sin embargo, puedes abrir ese mismo recordset en modo batch y hacer
> todas las modificaciones que quieras. Haces todos los updates que sean
> necesarios. Solo se actualizan en modo local. Solo subirás al servidor
> esos cambios (y de una sola vez) haciendo un updatebatch.
>
> Saludos,
> José Luis Capel
>
>
>