Avatar billede bleze Nybegynder
10. oktober 2005 - 09:16 Der er 1 løsning

Sidste query

Jeg har forgæves forsøgt at finde info om at læse sidste udførte query for en connection.

Man har @@identity til at læse sidste identity værdi, men jeg har altså brug for at læse sidste query (uanset type) pga noget fejl håndtering. Præsis det man kan se i profileren men jeg har behov for at gøre det gennem kode og logge det.
Avatar billede 0xffff Nybegynder
31. oktober 2005 - 13:34 #1
Du skal bruge processens ID til at gøre det med.

Det kan du f.eks gøre vha. dette eksempel

Select spid from master.dbo.sysprocesses where nt_username = 'gæst'

og så tage ID derfra og køre igennem:

DBCC INPUTBUFFER (spid)


et eksempel herpå kunne være f.eks denne query (må ikke køres på den process du selv er igang med, da dette jo laver en uendelig løkke.

declare @spid int

DECLARE spid_cursor CURSOR FOR
select spid from master.dbo.sysprocesses where nt_username = 'gæst'
OPEN spid_cursor
FETCH NEXT FROM spid_cursor into @spid
    WHILE @@FETCH_STATUS = 0
    BEGIN
        dbcc inputbuffer (@spid)
       
    END

close spid_cursor
deallocate spid_cursor
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester