2013-12-07 144 views
0

我在我的數據庫中有兩個表:Users,RolesMembershipMembership表將用戶分配給特定的角色。當創建另一個時自動創建記錄

我該如何自動創建Membership記錄,以便在Users中插入新記錄。

示例:創建用戶並分配了ID號(#562)時,數據庫會自動將它們添加到具有特定角色ID的Membership表中。

我該怎麼做?

+0

如何將記錄添加到用戶表中?你不能以同樣的方式插入成員記錄嗎? –

+0

用戶可以手動註冊帳戶。我使用的是ASP.NET Membership,所以我更願意在數據庫中擁有這些功能。 –

回答

2

Users表上寫一個AFTER INSERT TRIGGER表,這將在Membership表中插入新行。

http://msdn.microsoft.com/en-us/magazine/cc164047.aspx

假設你有你的新的會員行,當一個新的用戶插入用戶表中的默認角色ID,這樣的事情應該工作。

CREATE TRIGGER TRI_USERS_INSERT on Users 
AFTER INSERT 
AS 
SET NOCOUNT ON 

-- If you have a Default RoleID, select that into a variable and use it in the INSERT below. 
-- For this example, I am using just the number 1 
-- Also assumes that the ID for Memberships table is AUTO GENERATED, so it's not in INSERT list. 
INSERT INTO Memberships (UserID, RoleID) 
    SELECT ID, 1 FROM INSERTED 
GO 
+1

是的,它的工作。謝謝你的幫助! –

相關問題