· 8 years ago · Apr 11, 2018, 11:40 AM
1-- makes Admin table
2CREATE TABLE IF NOT EXISTS `AdminUser` (
3 `AdminID` smallint(6) NOT NULL AUTO_INCREMENT,
4 `Username` char(15) NOT NULL,
5 `PasswordHash` BINARY(64) NOT NULL,
6 `Fornavn` char(30) NOT NULL,
7 `Etternavn` char(40) NOT NULL,
8 `Email` char(40) NOT NULL,
9 PRIMARY KEY (`AdminID`)
10) ENGINE=InnoDB DEFAULT CHARSET=utf8;
11
12-- Makes hashing procedure
13CREATE OR REPLACE PROCEDURE vm_ski.addAdmin
14 @pUsername NVARCHAR(50),
15 @pPassword NVARCHAR(50),
16 @pFornavn NVARCHAR(30),
17 @pEtternavn NVARCHAR(40),
18 @pEmail NVARCHAR(40),
19 @responseMessage NVARCHAR(250)='' OUTPUT
20AS
21BEGIN
22 SET NOCOUNT ON
23
24 BEGIN TRY
25
26 INSERT INTO vm_ski.AdminUser (Username, PasswordHash, Fornavn, Etternavn, Email)
27 VALUES(@pUsername, HASHBYTES('SHA2_512', @pPassword), @pFornavn, @pEtternavn, @pEmail)
28
29 SET @responseMessage='Success'
30
31 END TRY
32 BEGIN CATCH
33 SET @responseMessage=ERROR_MESSAGE()
34 END CATCH
35
36END;
37
38-- Admin example
39DECLARE @responseMessage NVARCHAR(250)
40
41EXECUTE vm_ski.addAdmin
42 @pUsername = N'sondre',
43 @pPassword = N'example'
44 @pFornavn = N'Sondre'
45 @pEtternavn = N'Morgendal'
46 @pEmail = N'sondre.example@gmail.com'
47 ;