Link to home
Start Free TrialLog in
Avatar of QuinnDester
QuinnDesterFlag for United Kingdom of Great Britain and Northern Ireland

asked on

Ms sql trigger problem

I am having problems with a trigger, i cant get it to work and i cant see where its going wrong.

can sombody please look it over for me

Thank you

I need this to perform after an up or an insert in the tblfriends.FRIEND_JOINED_MEMBER_ID column
Create TRIGGER [dbo].[member_name_update] ON [dbo].[tblfriends] 
AFTER INSERT, UPDATE
AS 
declare @fmemberid
if UPDATE(FRIEND_JOINED_MEMBER_ID) 
SET @fmemberid = inserted.FRIEND_JOINED_MEMBER_ID
FROM inserted
declare @membername
set @membername =(select member_username from tblmembers where member_id = @fmemberid)
update [tblfriends] set FRIEND_JOINED_MEMBER_NAME = @membername where FRIEND_JOINED_MEMBER_ID = @fmemberid

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Aneesh
Aneesh
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of QuinnDester

ASKER

Excelent thank you
this should do:
Create TRIGGER [dbo].[member_name_update] ON [dbo].[tblfriends] 
AFTER INSERT, UPDATE
AS 
update f
  set FRIEND_JOINED_MEMBER_NAME = m.member_username
from [tblfriends] f
JOIN inserted i
  ON i.FRIEND_JOINED_MEMBER_ID = f.FRIEND_JOINED_MEMBER_ID 
JOIN tblmembers  m
  on m.FRIEND_JOINED_MEMBER_ID = f.FRIEND_JOINED_MEMBER_ID 
WHERE ISNULL(f.FRIEND_JOINED_MEMBER_NAME, 'XXXXXXXssdasda' <> ISNULL(m.member_username, 'asdadasdYYYYYY'

Open in new window