IF OBJECT_ID(N'dbo.Users12', N'U') IS NULL
BEGIN
CREATE TABLE dbo.Users12
(
UserID INT IDENTITY(1,1) NOT NULL,
FullName NVARCHAR(100) NOT NULL,
Phone NVARCHAR(20) NOT NULL,
Email NVARCHAR(100) NOT NULL,
Login NVARCHAR(100) NOT NULL,
PasswordHash VARBINARY(32) NOT NULL,
Role NVARCHAR(30) NOT NULL,
IsActive BIT NOT NULL
CONSTRAINT DF_Users12_IsActive DEFAULT (1),
CONSTRAINT PK_Users12
PRIMARY KEY (UserID),
CONSTRAINT UQ_Users12_Email
UNIQUE (Email),
CONSTRAINT UQ_Users12_Login
UNIQUE (Login),
CONSTRAINT CK_Users12_Role
CHECK (Role IN
(N'Клиент', N'Сотрудник', N'Администратор'))
);
END;
GO
-- Пример: добавить сотрудника через SQL.
-- Поменяй данные на свои и убери /* */.
/*
INSERT INTO dbo.Users12
(
FullName,
Phone,
Email,
Login,
PasswordHash,
Role,
IsActive
)
VALUES
(
N'Иванов Иван Иванович',
N'+7 900 000-00-01',
N'worker1@hotel.local',
N'worker1',
HASHBYTES(
'SHA2_256',
CONVERT(NVARCHAR(4000), N'Worker123!')
),
N'Сотрудник',
1
);
*/
-- Пример: добавить администратора.
/*
INSERT INTO dbo.Users12
(
FullName,
Phone,
Email,
Login,
PasswordHash,
Role,
IsActive
)
VALUES
(
N'Администратор Гостиницы',
N'+7 900 000-00-02',
N'admin1@hotel.local',
N'admin1',
HASHBYTES(
'SHA2_256',
CONVERT(NVARCHAR(4000), N'Admin123!')
),
N'Администратор',
1
);
*/
-- Посмотреть пользователей.
SELECT
UserID,
FullName,
Phone,
Email,
Login,
Role,
IsActive
FROM dbo.Users12
ORDER BY UserID;