¿Cómo se usa Nolock con TadoQuery y Tadotable?
Pregunta
Tengo el texto SQL "Seleccione * de la Tabla1 con (Nolock)".
Dos preguntas:
¿Cómo hago que mi tadoquey use la pista de Nolock sin tener que incluir eso en el texto SQL? Literalmente tengo miles de tados con su SQL construido dinámicamente, y sería difícil de agregar con (Nolock) a todos, sin mencionar que uso con plataformas de bases de datos distintas de MSSQL. ¿Hay una propiedad tadoQuery?
¿Cómo logro lo mismo con un tadotable? Tadotable no tiene SQL, entonces, ¿cómo le digo que use la pista de Nolock?
Gracias
Solución
Si usa MS SQL, ejecute la declaración a continuación una vez en la conexión
Establecer el nivel de aislamiento de la transacción lee no comprometido
Anímate AP
Otros consejos
Los sugerencias son específicos de la base de datos, por lo tanto, debe emitir la adecuada para cada base de datos compatible. En algunas bases de datos tampoco hay nada equivalente, por ejemplo, Oracle no permite nada parecido (los lectores nunca bloquean a los escritores y escritores nunca bloquean a los lectores, por lo tanto, no hay necesidad).
En mi humilde opinión, no deberías usar componentes tadotables, de todos modos, Afaik, no tienes forma de especificar una pista para la consulta generada, que de todos modos es demasiado genérico.
También deberías ser MUY Cuidado de usar Nolock. Significa leer no comprometido, también conocido como lecturas sucias. Está pasando por alto la protección de la transacción y, a menos que tenga una muy buena razón para evitarlo, no debería: la ganancia en el rendimiento no vale la pena la pérdida en la integridad y la coherencia de los datos.