SQL Server 2008 search joining query
I would suggest to handle your scenario using the application rather than using the DB. For example, if a member creates a message:


Check if the user in the message exists. Query the DB for this.
Based on the result from the query above: if the user exists, update
the appropriate row (DB update).
If the user does not  exist, insert the row (DB insert).


Note that in the above scenario, the application is making the logical decisions. If you want the DB to do this logical processing, then you can use an instead of insert trigger.