Hallo,
ich versuche mich aktuell an MS-SQL und habe eine Prozedur geschrieben, die bestimmte User-Sessions abschiessen soll. Die Namen der Personen sind in einer Textdatei abgelegt, dazu existiert eine Parameterdatei.
Hier die Prozedur:
create procedure USER_SPID (
@SPID_V smallint = 0,
@Ende_V char(5) =‚ENDE!‘)
AS
DECLARE LogonCursor CURSOR FAST_FORWARD FOR
SELECT SPID from sys.sysprocesses where UPPER(loginame) in (SELECT * FROM OPENROWSET(BULK N’C:\TEST.txt’,
FORMATFILE =‚C:\values.txt‘) AS name);
OPEN LogonCursor
FETCH NEXT FROM LogonCursor INTO @SPID_V
WHILE @@FETCH_STATUS = 0
BEGIN
select @SPID_V
FETCH NEXT FROM LogonCursor INTO @SPID_V
END
CLOSE LogonCursor
DEALLOCATE LogonCursor
select @Ende_V
An dem Punkt, wo jetzt noch das „select @SPID_V“ steht, soll nun der KILL-Befehl ausgeführt werden, aber hier komme ich nicht weiter.
Kann ich den KILL Befehl maskieren, oder kommt der mit Variablenübergabe nicht klar, oder… ?
Danke und Grüße
Chris