Vale, me respondo.
Para hacer el Dirtyread hay que especificarselo a la propiedad TranslationIsolation de la base de datos.
Algo como esto:
MiDatabase.TransIsolation := tiDirtyRead;
Pero he probado tanto esto como el modo ReadCommitted y no funciona.
Explico nuevamente o de otra forma lo que quiero conseguir:
Tengo un blucle for que recorre N elementos de un array a insertar en la BD. Uno de los campos a insertar se obtiene a traves de una consulta SELECT con un parametro del elemento N1 del array. Una vez tengo todos los valores para los campos, hago el INSERT.
Pues bien, el problema viene cuando al hacer el SELECT tiene que devolver un valor de un registro previamente insertado (todavia no hemos hecho COMMIT porque el for no ha acabado). Es decir ese registro todavia no se ha actualizado en la BD.
Bien, seguiremos intentandolo a ver y toda respuesta sera bienvenida.
saludos,
|