mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-07-16 17:47:22 +00:00
53 lines
936 B
Transact-SQL
53 lines
936 B
Transact-SQL
CREATE
|
|
OR
|
|
ALTER PROCEDURE dbo.USP_RegisterUser(
|
|
@Username VARCHAR (64),
|
|
@FirstName NVARCHAR(128),
|
|
@LastName NVARCHAR(128),
|
|
@DateOfBirth DATETIME,
|
|
@Email VARCHAR (128),
|
|
@Hash NVARCHAR(MAX)
|
|
)
|
|
AS
|
|
BEGIN
|
|
SET
|
|
NOCOUNT ON;
|
|
SET
|
|
XACT_ABORT ON;
|
|
|
|
DECLARE
|
|
@UserAccountId_ UNIQUEIDENTIFIER;
|
|
|
|
BEGIN
|
|
TRANSACTION;
|
|
|
|
EXEC usp_CreateUserAccount
|
|
@UserAccountId = @UserAccountId_ OUTPUT,
|
|
@Username = @Username,
|
|
@FirstName = @FirstName,
|
|
@LastName = @LastName,
|
|
@DateOfBirth = @DateOfBirth,
|
|
@Email = @Email;
|
|
|
|
IF
|
|
@UserAccountId_ IS NULL
|
|
BEGIN
|
|
THROW
|
|
50000, 'Failed to create user account.', 1;
|
|
END
|
|
|
|
INSERT INTO dbo.UserCredential
|
|
(UserAccountId, Hash)
|
|
VALUES (@UserAccountId_, @Hash);
|
|
|
|
IF
|
|
@@ROWCOUNT = 0
|
|
BEGIN
|
|
THROW
|
|
50002, 'Failed to create user credential.', 1;
|
|
END
|
|
COMMIT TRANSACTION;
|
|
|
|
SELECT @UserAccountId_ AS UserAccountId;
|
|
END
|