下面示图为角色管理介面。在数据表[Role]中,最少需要两个字段[RoleId]和[RoleName]。Project中所有角色在此介面进行管理。

下面为表[Role]结构,直接拷贝在sql Server2008查询分析器执行:

代码

ET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Role](
    [RoleId] [smallint] IDENTITY(1,1) NOT NULL,
    [RoleName] [nvarchar](50) NOT NULL,
    [Description] [nvarchar](100) NOT NULL,
PRIMARY KEY CLUSTERED 
(
    [RoleId] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY],
 CONSTRAINT [UK_Role_UD980sA6] UNIQUE NONCLUSTERED 
(
    [RoleName] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

插入的存储过程usp_Role_Insert:

代码

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE   PROCEDURE [dbo].[usp_Role_Insert]
(
    @RoleName nvarchar(50),
    @Description nvarchar(50)
)
AS    
 SELECT [RoleName] FROM [Role] WHERE [RoleName]=@RoleName
IF @@ROWCOUNT>0
BEGIN
    RAISERROR(N'此角色已经存在,无法添加!',16,1)
    RETURN
END
ELSE

BEGIN TRANSACTION
        DECLARE @err int
            INSERT INTO dbo.Role([RoleName],[Description]) VALUES (@RoleName,@Description)
        SET @err=@@ERROR
        IF @err<>0    
        BEGIN
    ROLLBACK TRANSACTION        
        END
        
    COMMIT TRANSACTION

最后即是更新的存储过程usp_Role_Update:

代码

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE  PROCEDURE [dbo].[usp_Role_Update]
(
@ID tinyint,
@RoleName nvarchar(50),
@Description nvarchar(50)
)
AS    
 SELECT [RoleName] FROM [Role] WHERE [RoleName]=@RoleName AND [RoleId] <> @ID
IF @@ROWCOUNT>0
BEGIN
    RAISERROR(N'此角色已经存在,无法更新!',16,1)
    RETURN
END
ELSE

BEGIN TRANSACTION
        DECLARE @err int
            UPDATE [Role] SET [RoleName]=@RoleName,[Description]=@Description WHERE [RoleId]=@ID
        SET @err=@@ERROR
        IF @err<>0    
        BEGIN
    ROLLBACK TRANSACTION        
        END
        
    COMMIT TRANSACTION

GO

转载于:https://www.cnblogs.com/insus/archive/2010/07/13/1776447.html

权限管理----角色管理相关推荐

  1. Ubuntu20.04环境下MySQL8.0.30的 用户管理,设置修改密码,密码过期策略,权限管理,角色管理

    MySQL8.0.30 用户管理,设置修改密码,权限管理,角色管理 MySQL5.7可以 (创建用户,设置密码,授权) 一步到位

  2. Oracle用户、权限、角色管理

    Oracle 数据库用户管理 Oracle 权限设置 一.权限分类: 系统权限:系统规定用户使用数据库的权限.(系统权限是对用户而言). 实体权限:某种权限用户对其它用户的表或视图的存取权限.(是针对 ...

  3. oracle 修改列类型6,Oracle用户、权限、角色管理 编辑

    Oracle 数据库用户管理 Oracle 权限设置 一.权限分类: 系统权限:系统规定用户使用数据库的权限.(系统权限是对用户而言). 实体权限:某种权限用户对其它用户的表或视图的存取权限.(是针对 ...

  4. oracle权限培训,【必看】Oracle用户、权限、角色管理

    二.系统权限管理 1.系统权限分类: DBA:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构. RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构. C ...

  5. 权限系统--角色管理

    角色管理是单表操作的最后一个,其实也不能算是单表操作了,因为在添加角色时,就已经对角色授权了. 一:界面展示 1:主界面 2:添加界面 3:修改界面 二:难点解析 有所不同的是在添加角色是可以进行角色 ...

  6. 管理后台项目-06-用户管理角色管理模块

    目录 1-路由信息搭建和api文件信息创建 2-用户管理模块 2.1-列表数据获取以及动态渲染 2.2-添加 | 修改 用户 2.3-删除-批量删除用户 2.4-分配角色 3-角色管理 3.1-修改角 ...

  7. linux chown 将root改变所有者为admin,Linux用户管理 权限管理 内存管理 网络管理命令 (第四天)...

    默认添加的用户会自动加入和用户名一样的组中 su 切换用户 查看当前登陆的用户: whoami id` 查看当前用户属于哪个组:groups groupadd 组名 添加组 groupdel 组名 删 ...

  8. 测试角色管理--测试经理岗

    本文在研发组织管理中的位置: 研发组织管理--角色管理--  QA  --测试经理岗 定位: 有效搭建.领导.优化一个自驱力强的测试团队,使项目测试高质.高效.可控: 职责: 对内: 1.团队梯队搭建 ...

  9. 测试角色管理--持续集成专家岗(虚拟)

    本文在研发组织管理中的位置: 研发组织管理--角色管理--QA--持续集成专家岗(虚拟) 定位: 管理除"项目功能测试自动化用例"本身以外的所有自动化工作,帮助整个测试团队设置并且 ...

最新文章

  1. HDOJ1035 ( Robot Motion ) 【递归】
  2. OFDM | 基本原理(一)
  3. Java集合框架-概述
  4. 使用hbuilder的maps模块调起百度地图导航
  5. Java基础学习总结(141)——Cron 表达式使用再总结
  6. vscode有趣插件
  7. 使用密钥文件登录及免密登录服务器方法
  8. STM32F103入门 | 2.STM32F103xx内部资源介绍
  9. .NET Core Serilog 组件
  10. CTF-命令执行漏洞
  11. collapse mode 严重_明早10点大讲堂 | 一个简单的方法解决生成对抗网络mode collapse问题...
  12. 功能性模块:(7)检测性能评估模块(precision,recall等)
  13. ”一个馒头引发的血案“|记Mybatis之BindingException异常的产生及解决过程
  14. 机器人搭建记录 yobot(LinuxWindows手动搭建)
  15. The 10th Zhejiang Provincial Collegiate Programming Contest 蒻菜的水题题解。
  16. c语言填字母游戏蓝桥杯,蓝桥杯2017国赛JAVAB组 填字母游戏 题解
  17. 交直流线性电源行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  18. Apsara Clouder云计算专项技能认证:云服务器ECS
  19. Ubuntu 16.04.3 LTS操作系统安全加固
  20. 《Linux内核情景分析》阅读笔记

热门文章

  1. 手机号 imsi tmsi_抓取网站访客手机号
  2. java集合学生信息_java 使用 集合 制作学生管理系统
  3. 强化学习ppt_机器学习原理、算法与应用配套PPT第四部分(深度学习概论、自动编码器、强化学习、聚类算法、半监督学习等)...
  4. python矩阵reshape_[LeetCode Python3]566. Reshape the Matrix(重塑矩阵)
  5. C++知识点33——使用C++标准库(无序关联容器unordered_(multi)map,unordered_(multi)set)
  6. 微软考虑将 Python 作为 Excel 官方脚本语言
  7. 第 6 章 Harddisk IO
  8. swift-初探webView与JS交互
  9. Python3 登陆网页并保持cookie
  10. Grunt插件之LiveReload 实现页面自动刷新,所见即所得编辑