[SQL Server] Trigger aus asp auslösen

goout

Grünschnabel
Hallo

Seit geraumer Zeit versuche ich herauszufinden warum mein Trigger über den "Query Analyzer" sauber funktioniert, aber beim auslösen über einen Insert aus einer ASP Applikation in einem Timeout läuft.

Die Aufgabe des triggers ist es, eine grössere Berechnung auszuführen. Da beim verarbeiten der Daten (über 20'000 Datensätze) aus dem ASP sowieso in einen timeout komme, habe ich mir überlegt, die Berechnung über einen Trigger abzusetzen.


Habe eine Tabelle namens tbl_stack

Trigger:

Code:
CREATE TRIGGER trigger_Stack 
  ON tbl_stack
  After insert
AS


INSERT Befehl aus dem Query Analyzer und aus dem ASP:

Code:
INSERT INTO tbl_stack (benutzer, startdatum, enddatum) 
VALUES ('name', '20050101 00:00', '20050110 00:00')

Kann mir da jemand weiterhelfen.

daniel
 
Zuletzt bearbeitet:
Habe noch was herausgefunden. Bei einem insert in eine Tabelle wartet man bis der trigger abgearbeitet ist. Gibt es eine Möglichkeit, einen insert zu machen, ohne abzuwarten, wie es mit dem trigger ausgeht?
 
Die Ausführung des Triggers ist Bestandteil der Insert Transaktion auch wenn Du den Trigger als "After Insert" definierst. Somit muss Deine Timeout-Zeit auch die Ausführungszeit des Triggers beinhalten.

Wenn das Ergebniss des Triggers nicht relevant für die Applikation ist, die das Insert ausführt, dann gibt es folgende Option: Statt eines Triggers benutzt Du einen Job, der regelmässig die Berechnung im Batch ausführt. Du musst Dir in diesem Fall ev. noch ein Status Feld in Deine Tabelle einbauen, mit dem Du steuerst, welche Zeilen noch berechnet werden müssen, bzw welche bereits vom Job abgearbeitet wurden.
 
Habe es gefunden. Das Problem scheint sich zu lösen. Jetzt muss ich nur noch einen vernünftigen job bauen.

Danke
 

Neue Beiträge

Zurück