写一个 react+c# sqlserver数据库用户权限和菜单权限常用的表结构
时间: 2024-01-24 12:01:46 浏览: 74
好的,下面是一个简单的 React 和 C# 结合使用 SQL Server 数据库的用户权限和菜单权限常用的表结构:
```
CREATE TABLE Users (
Id INT IDENTITY(1,1) PRIMARY KEY,
FirstName NVARCHAR(50) NOT NULL,
LastName NVARCHAR(50) NOT NULL,
Email NVARCHAR(100) NOT NULL UNIQUE,
Password NVARCHAR(100) NOT NULL
);
CREATE TABLE Roles (
Id INT IDENTITY(1,1) PRIMARY KEY,
Name NVARCHAR(50) NOT NULL,
Description NVARCHAR(500)
);
CREATE TABLE UserRoles (
UserId INT NOT NULL FOREIGN KEY REFERENCES Users(Id),
RoleId INT NOT NULL FOREIGN KEY REFERENCES Roles(Id),
PRIMARY KEY (UserId, RoleId)
);
CREATE TABLE Permissions (
Id INT IDENTITY(1,1) PRIMARY KEY,
Name NVARCHAR(50) NOT NULL,
Description NVARCHAR(500)
);
CREATE TABLE RolePermissions (
RoleId INT NOT NULL FOREIGN KEY REFERENCES Roles(Id),
PermissionId INT NOT NULL FOREIGN KEY REFERENCES Permissions(Id),
PRIMARY KEY (RoleId, PermissionId)
);
CREATE TABLE Menus (
Id INT IDENTITY(1,1) PRIMARY KEY,
Name NVARCHAR(50) NOT NULL,
Url NVARCHAR(500) NOT NULL,
ParentId INT NULL,
OrderIndex INT NOT NULL
);
CREATE TABLE RoleMenus (
RoleId INT NOT NULL FOREIGN KEY REFERENCES Roles(Id),
MenuId INT NOT NULL FOREIGN KEY REFERENCES Menus(Id),
PRIMARY KEY (RoleId, MenuId)
);
```
以上是一个简单的表结构,包括用户、角色、权限和菜单。在用户和角色之间建立了一个中间表 UserRoles,用于表示一个用户可以拥有多个角色。在角色和权限之间建立了一个中间表 RolePermissions,用于表示一个角色可以拥有多个权限。在角色和菜单之间建立了一个中间表 RoleMenus,用于表示一个角色可以拥有多个菜单权限。在 React 前端和 C# 后端中,可以使用相应的库来连接和操作 SQL Server 数据库,并在应用程序中使用这些表来管理用户和菜单权限。
阅读全文