6106: Die Prozess-ID %1! ist keine aktive Prozess-ID.

By Frank Kalis

Posted on Mär 20, 2012 von in 6000-6999

Fehlermeldung:
Meldung 6106, Ebene 16, Status 1, Zeile 1
Die Prozess-ID %1! ist keine aktive Prozess-ID.

Ebene:
16.

Beschreibung:
Diese Fehlermeldung erscheint, wenn versucht wird eine inaktive Prozess-ID durch KILL zu terminieren.

Auswirkungen:
Das SQL Statement kann zwar geparst werden, jedoch zur Laufzeit wird der Fehler ausgelöst.

Behebung:
Fehler der Ebene 16 sind Fehler, die vom Anwender hervorgerufen werden. Sie können und müssen vom Anwender korrigiert werden. Die inaktive Prozess-ID muss korrigiert werden.

Versionen:
Alle Versionen von SQL Server.

Beispiele:
CREATE TABLE #t
(
spid INT NULL
, ecid INT NULL
, status SYSNAME NULL
, loginname SYSNAME NULL
, hostname SYSNAME NULL
, blk INT NULL
, dbname SYSNAME NULL
, cmd NVARCHAR(1000) NULL
, request_id INT NULL
)
INSERT INTO #t EXEC sp_who
DECLARE @max_spid INT
DECLARE @stmt NVARCHAR(100)
SELECT @max_spid = MAX(spid)
FROM #t
SET @stmt = 'KILL ' + CAST(@max_spid +1 AS NVARCHAR(10))
EXEC sp_ExecuteSQL @stmt
DROP TABLE #t

Anmerkungen:
Im obigen Beispiel wird das Ergebnis von sp_who in eine temporäre Tabelle geleitet. Die MAX(spid) wird um 1 erhöht, um sicherzustellen, daß stets eine inaktive Prozes-ID daraus resultiert. Diese kann nicht durch KILL terminiert werden und löst den Fehler aus.

Dieser Eintrag wurde eingetragen von und ist abgelegt unter 6000-6999.

Noch kein Feedback


Formular wird geladen...