In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

TOdbcDatasource:lAutoCommit

Foro de Xailer profesional en español
Responder
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TOdbcDatasource:lAutoCommit

Mensaje 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
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9457
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

TOdbcDatasource:lAutoCommit

Mensaje 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
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

TOdbcDatasource:lAutoCommit

Mensaje 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
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TOdbcDatasource:lAutoCommit

Mensaje 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
>
>
>
Responder