blob: b22b2319fba493416ca7ec303bfa6206e9a675b0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
CREATE PROCEDURE [dbo].[AddUser]
(
@firstName nvarchar(50),
@lastName nvarchar(50),
@openid nvarchar(255),
@role nvarchar(255)
)
AS
DECLARE
@roleid int,
@userid int
BEGIN TRANSACTION
INSERT INTO [dbo].[User] (FirstName, LastName) VALUES (@firstName, @lastName)
SET @userid = (SELECT @@IDENTITY)
IF (SELECT COUNT(*) FROM dbo.Role WHERE [Name] = @role) = 0
BEGIN
INSERT INTO dbo.Role (Name) VALUES (@role)
SET @roleid = (SELECT @@IDENTITY)
END
ELSE
BEGIN
SET @roleid = (SELECT RoleId FROM dbo.Role WHERE [Name] = @role)
END
INSERT INTO dbo.UserRole (UserId, RoleId) VALUES (@userId, @roleid)
INSERT INTO dbo.AuthenticationToken
(UserId, OpenIdClaimedIdentifier, OpenIdFriendlyIdentifier)
VALUES
(@userid, @openid, @openid)
COMMIT TRANSACTION
RETURN @userid
|