Oracle
 sql >> Database >  >> RDS >> Oracle

Transazioni autonome in Sybase ASE 15.5

Non importa. Sono riuscito a trovare la soluzione da solo.

A chi potrebbe interessare:L'idea della soluzione è stata presa dagli SP esterni di SQL Server, che Microsoft utilizza come soluzione per le TRANSAZIONI AUTONOME da Oracle.

In Sybase Adaptive Server Enterprise è possibile creare un server remoto sul server corrente utilizzando la seguente istruzione:

exec sp_addserver SRVName, RPCServer, @@servername

Quindi è necessario impostare l'opzione sul server corrente:

set transactional_rpc on

Da questo punto puoi fare riferimento ai tuoi oggetti tramite il server SRVName, come:

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 può essere creato come:

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

Le tabelle possono essere create come:

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

Grazie.