Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 4.287 pregleda

Najnovija ↓

Linked server i trigger insert 23.11.2006. u 13:07 · pre 242 meseca #1
naime, radi se o sledecem
imam server A na koji sam linkovao server B preko sp_addlinkedserver ...

na serveru A na tabeli imam jednu proceduru koja treba da unese isti slog u server B

set xact_abort on
SET ANSI_NULLS ON
SET ANSI_WARNINGS ON
SET REMOTE_PROC_TRANSACTIONS OFF

BEGIN DISTRIBUTED TRAN pepe
insert into openquery(MIRAN, 'select * from proba_linked.dbo.test where 1=0')
values(5, 'proba 1')
COMMIT TRAN pepe

set xact_abort oFF
SET ANSI_NULLS OFF
SET ANSI_WARNINGS OFF
SET REMOTE_PROC_TRANSACTIONS ON

kad se ovi upiti rucno kucaju u QA sve radi, bez problema
medjutim
kad se ovo stavi u proceduru i kad se ta procedura pokrene iz QA,
procedura pocne da radi i nikad ne zavrsi
ne daje rezultate, ne daje errore, samo executing ........
moram da stopiram MS DTC da bi se prekinulo izvrsavanje

ima li neko ideju oko ovoga
Hvala
Srdjan





Re: Linked server i trigger insert 23.11.2006. u 14:25 · pre 242 meseca #2
Ideja je sledeca:
proveri koji Service Pack imas instaliran.Kod service packa 4 ima slicnih problema.Pozzz.
Potpis
logic_rabbit (MCAD,MCSD,MCT,MCTS-
Windows development,MCPD)
Re: Linked server i trigger insert 23.11.2006. u 14:46 · pre 242 meseca #3
testiram ga na dva racunara
server je win 2000 sa sp4
na njemu je MS SQL 2000 SP4

na drugom racunaru je Win XP sp2 i MS SQL 2000 SP2
na trecem racunaru je Win XP sp2 i MS SQL 2000 SP4

isto se desava, ceo dan citam resenja na grupama i sta god da primenim
uvek isto

?!
Re: Linked server i trigger insert 23.11.2006. u 21:40 · pre 242 meseca #4
Jesi li aktivirao Remote Procedure Call za linkovan server?
Ako nisi RPC mozes aktivirati iz Enterprise Manager-a ili sledecom skriptom:
Code:

exec sp_serveroption N'<ime linkovanog servera>', N'rpc', N'true' 
exec sp_serveroption N'<ime linkovanog servera>', N'rpc out', N'true' 
Re: Linked server i trigger insert 24.11.2006. u 07:58 · pre 242 meseca #5
Ja mislim da treba da probas MSSQL SP3, i da na serveru sa ovim service packom izvrisis proceduru.
Potpis
logic_rabbit (MCAD,MCSD,MCT,MCTS-
Windows development,MCPD)
Re: Linked server i trigger insert 24.11.2006. u 08:26 · pre 242 meseca #6
jesam aktivirao sam upravo i isto se desava, ne znam vise gde da gledam,
DTC su aktivirani na svim mašinama
na mreži je domen, ali nema nikakvih posebnih permission-a
svi portovi unutar mreže su otvoreni

šta pokušavam, pa ako se na jednoj mašini u nekoj tabeli unese slog
da isti taj slog ode i na drugi server u identičnu bazu i tabelu
(collation je isti i na bazi i na tabeli)

jedino, jel moze biti problem ako mi je taj server virtual masina a
racunari su fizicki pristuni


evo i skripte
hvala
Srdjan
****************************************************

use master
go

IF EXISTS(SELECT * FROM master.dbo.sysservers WHERE srvname ='MIRAN')
EXEC sp_dropserver 'MIRAN','droplogins'

exec sp_addlinkedserver @server = N'MIRAN',
@srvproduct = N'',
@provider = N'SQLOLEDB',
@catalog = N'proba_linked'
go

exec sp_addlinkedsrvlogin 'MIRAN','false', 'sa', 'sa', 'passwdw'
go

exec sp_serveroption N'MIRAN', N'rpc', N'true'
go
exec sp_serveroption N'MIRAN', N'rpc out', N'true'
go


use proba_linked
go

set ansi_nulls off
GO
set ansi_warnings off
go

if exists(select * from sysobjects WHERE name='test' and type='U ')
drop table test
GO

create table test (
sifra int NOT NULL PRIMARY KEY,
naziv nvarchar(50))
go

IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'TEST_INSERT' AND type = 'TR')
drop trigger TEST_INSERT
GO

SET XACT_ABORT ON
go
SET IMPLICIT_TRANSACTIONS OFF
go
SET REMOTE_PROC_TRANSACTIONS OFF
go
SET ANSI_NULLS ON
go
SET ANSI_WARNINGS ON
go
CREATE TRIGGER [TEST_INSERT] ON [dbo].[test]
FOR INSERT
AS
SET XACT_ABORT ON

BEGIN DISTRIBUTED TRAN pepe

INSERT INTO OPENQUERY(MIRAN, 'select sifra, naziv from proba_linked.dbo.test where 1=0')
SELECT sifra, naziv
FROM inserted

COMMIT TRAN pepe

SET implicit_transactions on
SET REMOTE_PROC_TRANSACTIONS ON
GO

INSERT INTO TEST(sifra,naziv)
values(1,'prvi unos')
GO


Re: Linked server i trigger insert 24.11.2006. u 08:43 · pre 242 meseca #8
pardon

ovako linkujem server

EXEC sp_addlinkedserver
@server='MIRAN',
@srvproduct=N'SQL Server'
GO
Re: Linked server i trigger insert 24.11.2006. u 17:50 · pre 242 meseca #9
Citat:
priki: pardon

ovako linkujem server

EXEC sp_addlinkedserver
@server='MIRAN',
@srvproduct=N'SQL Server'
GO


Fali ti @datasrc = '<naziv drugog racunara>' inace se linkujes ponovo na isti server.
Re: Linked server i trigger insert 25.11.2006. u 08:47 · pre 242 meseca #10
čudna životinjka je ovaj MS SQL
pa evo, postavio sam ovako

exec sp_addlinkedserver @server = N'MIRAN',
@srvproduct = N'',
@provider = N'SQLOLEDB',
@catalog = N'proba_linked'
go


pa smo dobili napredak, sad javi ovu poruku:

Server: Msg 7391, Level 16, State 1, Procedure TEST_INSERT, Line 8
The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction.
[OLE/DB provider returned message: New transaction cannot enlist in the specified transaction coordinator. ]
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme