Hola a todos, estoy leyendo un libro de sql server, y en una nota dice lo siguiente:
Las llamadas a procedimientos almacenados remotos no se consideran parte de un transacción, si ejecuta una llamada a un procedimiento almacenado remoto después de begin transaction y despues usa rollback transaction, los cambios
realizados por la llamada en los datos remotos no se revierten.
Quisiera que me ayuden entender bien este concepto ya que puedo entorpeser la migracion de sistemas con Oracle que estoy pensando en migrar a SQL Server.
Bueno en primera, a que se considera SP Remoto? a un SP que reside en otro esquema? otra BD? otra Instancia? otro server? ejecutado por un usuario diferente al que lo creó?
Bueno, tal vez esta información adicional del contexto en el que me encuentro les ayude a brindarme mejor apoyo, tengo N Bases de datos, cada base de datos tiene N esquemas, dentro de cada esquema hay N SP's, eso es a nivel BD, ahora bien tengo un usuario
GENÉRICO con el cual se conecta la aplicación (desarrollada en .net) y tiene privilegios de ejecutar todos los SP de todos lo esquemas de todas las BD, aquí viene el dilema: las llamdas a SP muchas veces se los hace en lote, o sea la aplicacion ejecuta algo
como BD1.esquemaX.procedureY, luego ejecuta BD2,esquemaY.procedure5 y finalmente BD5.esquema8.procedureXYZ, y finalmente si todos los SP se ejecutaron correctamente se hace commit a todo, o caso contrario rollback a todo, y bueno ese concepto que describí
a un comienzo ya me mareo la perdiz y no se si lo que tengo en mente es posible, les agradeceria mucho que me ayuden a orientarme al respecto.
Gracias de antemano, saludos cordiales a todos.
Roy Sillerico