WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   sql server 2005 trigger (http://www.wcm.at/forum/showthread.php?t=237389)

Hussl 02.12.2009 16:51

sql server 2005 trigger
 
hallo!

kurze frage, ich find auch die schnelle nix passendes...

wenn ich einen instead-of-insert-trigger einer tabelle anlege und in diesem trigger ein normales insert into auf dieselbe tabelle mache, kommt es dann zu einer art endlosschleife??

Hussl 02.12.2009 16:52

auch wenns gaga ist, momentan hab ich das so:

Code:


CREATE TRIGGER [dbo].[NewsletterChanges]
ON [dbo].[NewsletterChanges]
INSTEAD OF INSERT
AS
BEGIN
DECLARE @UserID VARCHAR(50);
DECLARE @Email VARCHAR(100);
DECLARE @Optin VARCHAR(50);
DECLARE @LastUpdateDate VARCHAR(24);
DECLARE @UpdateDate DATETIME;
DECLARE @CustomerNR VARCHAR(13);
DECLARE @Message VARCHAR(500);
DECLARE c CURSOR LOCAL FAST_FORWARD
FOR
SELECT mUserID,
mEmail,
CASE mOptIn
WHEN 'WAHR' THEN 1
WHEN 'FALSCH' THEN 0
END,
'10000'+mCustomerNR AS mCustomerNR,
mLastUpdateDate,
CONVERT(datetime, mLastUpdateDate, 104) AS UpdateDate
FROM INSERTED;
OPEN c
FETCH NEXT FROM c INTO @UserID, @Email, @Optin, @CustomerNR, @LastUpdateDate, @UpdateDate
WHILE @@FETCH_STATUS= 0
BEGIN

INSERT INTO NewsletterChanges(mUserID, mEmail, mOptIn, mCustomerNR, mLastUpdateDate, mUpdateDate)
VALUES(@UserID, @Email, @Optin, @CustomerNR, @LastUpdateDate, @UpdateDate);
EXEC usp_NewsletterChanges @CustomerNR, @Message;
END
FETCHNEXTFROM c
CLOSE c
DEALLOCATE c
END



Alle Zeitangaben in WEZ +2. Es ist jetzt 19:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag