sql-server – 如何在SQL Server数据库中设计用户/角色架构?
发布时间:2021-04-01 03:46:04 所属栏目:MsSql教程 来源:网络整理
导读:我想设计一个用户/角色系统: 用户具有名称和密码,然后用户可以拥有多个角色,如Admin. 为此,我创建了一个这样的架构: 用户: CREATE TABLE [dbo].[Users]( [id] [int] NOT NULL,[name] [nvarchar](50) NULL,[password] [nvarchar](50) NULL,CONSTRAINT [PK_U
我想设计一个用户/角色系统: 用户具有名称和密码,然后用户可以拥有多个角色,如Admin. 为此,我创建了一个这样的架构: 用户: CREATE TABLE [dbo].[Users] ( [id] [int] NOT NULL,[name] [nvarchar](50) NULL,[password] [nvarchar](50) NULL,CONSTRAINT [PK_Users] PRIMARY KEY CLUSTERED ([id] ASC) ) 角色: CREATE TABLE [dbo].[Roles] ( [id] [int] NOT NULL,CONSTRAINT [PK_Roles] PRIMARY KEY CLUSTERED ([id] ASC) ) user_roles: CREATE TABLE [dbo].[User_Roles] ( [id] [int] NOT NULL,[User_id] [int] NOT NULL,[Role_id] [int] NOT NULL,CONSTRAINT [PK_User_Roles] PRIMARY KEY CLUSTERED ([id] ASC) ) 我的问题是:我应该使用外键User_Roles.User_id – >用户名 如果是,为什么? 解决方法不太清楚你的意思,但……> User_Roles应该只有2列User_id和Role_id 编辑:现在我明白了.是的,always use foreign keys 也… >如果密码是nvarchar(50),这意味着纯文本. This is bad. 主键创建后的注释后编辑… CREATE TABLE [dbo].[User_Roles] ( [User_id] [int] NOT NULL,CONSTRAINT [PK_User_Roles] PRIMARY KEY CLUSTERED ([User_id],[Role_id]),CONSTRAINT [UQ_ReversePK] UNIQUE ([Role_id],[User_id]) ) (编辑:上饶站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 微软不惜血本为Windows Server 2003 造声势
- sql – 在VBA中从Access模块??传递参数时调用存储过程
- XHTML标记要合理使用
- 昂达光磁产品狂降,8×8 ¥699,8×4 ¥599
- 昂达NK7U PRO:让您的Athlon 2500+稳超3200+
- sql-server – 包含要使用文件流的二进制文件的现有表
- sql-server – 在不返回任何行的查询中包含ORDER BY会严重影
- sql-server-2005 – IIS7上对SQL Server Reporting Service
- 新浪联手顺和达:国产软件新秀评选活动开幕
- VMware tools下载与VMware tools安装方法