Oracle
 sql >> Base de données >  >> RDS >> Oracle

Transactions autonomes dans Sybase ASE 15.5

Peu importe. J'ai réussi à trouver la solution moi-même.

À qui cela peut intéresser :L'idée de la solution a été tirée des SP externes de SQL Server, que Microsoft utilise comme solution pour les TRANSACTIONS AUTONOMES d'Oracle.

Dans Sybase Adaptive Server Enterprise, il est possible de créer un serveur distant sur votre serveur actuel à l'aide de l'instruction suivante :

exec sp_addserver SRVName, RPCServer, @@servername

Ensuite, il est nécessaire de définir l'option sur le serveur actuel :

set transactional_rpc on

À partir de ce moment, vous êtes autorisé à faire référence à vos objets via le serveur SRVName, comme :

create proc sp_test_autonom1
as
begin
begin transaction
insert into test_idx values(10,20)
declare @status int
exec @status = SRVName.itest..sp_autonom
rollback transaction
end

SRVName.itest..sp_autonom peut être créé comme :

create proc sp_autonom
as
begin 
begin transaction
insert into test_idx2 values(1,2)
commit transaction
end

Les tableaux peuvent être créés comme :

create table test_idx(col1 int, col2 int)
go
create table test_idx2(col1 int, col2 int)

Merci.