sql >> Databasteknik >  >> RDS >> Oracle

Autonoma transaktioner i Sybase ASE 15.5

Glöm det. Jag har lyckats hitta lösningen själv.

Till vem det kan vara intresserad:Idén till lösningen har hämtats från SQL Server externa SPs, som Microsoft använder som lösning för AUTONOMA TRANSAKTIONER från Oracle.

I Sybase Adaptive Server Enterprise finns det en möjlighet att skapa en fjärrserver på din nuvarande server med hjälp av följande uttalande:

exec sp_addserver SRVName, RPCServer, @@servername

Då krävs det att du ställer in alternativet på den aktuella servern:

set transactional_rpc on

Från denna punkt får du referera till dina objekt via SRVName-servern, som:

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 kan skapas som:

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

Tabeller kan skapas som:

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

Tack.




  1. Okänd kolumn i fältlistan

  2. Framtvinga alla rader från första tabellen i en join

  3. Sequelize, MySQL - Filtrera rader i tabell med JSON-kolumnvärden

  4. mysql_connect() misslyckas med tom varning