分析权限存储与页面对应的SQL存储过程

数据库 SQL Server
分析权限存储与页面对应的SQL存储过程是一种非常典型的SQL存储过程,下面就为您介绍该SQL存储过程的写法,供您参考学习。

SQL存储过程的功能非常强大,下面就将为您介绍实现分析权限存储与页面对应的SQL存储过程,希望对您学习SQL存储过程方面有所启迪。

  1. CREATE PROCEDURE w_Function_GetParams  
  2. AS  
  3. DECLARE  
  4.     @FunctionName_CN nvarchar(64),  
  5.     @ActionName nvarchar(32),  
  6.     @PageName nvarchar(128),  
  7.     @Cache_FN nvarchar(256),  
  8.     @LENFN int,  
  9.     @Index_A int,  
  10.     @index_B int  
  11. BEGIN  
  12.     CREATE TABLE #Temp_TAB  
  13.     (  
  14.         ID int identity(1,1),  
  15.         FN nvarchar(64),  
  16.         AN nvarchar(32),  
  17.         PN nvarchar(128)  
  18.     )  
  19.  
  20.     DECLARE FN_CURSOR CURSOR FOR  
  21.     SELECT FunctionName FROM Admin_FunctionList WHERE GroupID=0 
  22.  
  23.     OPEN FN_CURSOR;  
  24.     FETCH NEXT FROM FN_CURSOR INTO @Cache_FN;  
  25.  
  26.     WHILE @@FETCH_STATUS=0 
  27.     BEGIN  
  28.         SET @LENLENFN=LEN(@Cache_FN);  
  29.         SET @Index_A=CHARINDEX('|',@Cache_FN);  
  30.         SET @Index_B=CHARINDEX(':',@Cache_FN);  
  31.  
  32.         SET @FunctionName_CN=SUBSTRING(@Cache_FN,0,@Index_A);  
  33.         SET @ActionName=SUBSTRING(@Cache_FN,@Index_A+1,@Index_B-@Index_A-1);  
  34.         SET @PageName=SUBSTRING(@Cache_FN,@Index_B+1,@LENFN-@Index_B);  
  35.  
  36. --        print(@FunctionName_CN);  
  37. --        Print(@ActionName);  
  38. --        print(@PageName);  
  39.  
  40.         INSERT INTO #Temp_TAB VALUES(@FunctionName_CN,@ActionName,@PageName)  
  41.           
  42.         FETCH NEXT FROM FN_CURSOR INTO @Cache_FN;  
  43.     END  
  44.       
  45.     CLOSE FN_CURSOR;  
  46.     DEALLOCATE FN_CURSOR;  
  47.  
  48.     SELECT FN,AN,PN FROM #Temp_TAB GROUP BY PN,AN,FN  
  49.  
  50. END  

 

 

 

【编辑推荐】

SQL Server SA权限小技巧

SQL数据库操作授权

增加SQL用户名的方法

SQL2000创建角色示例

带您深入了解SQL数据库角色

责任编辑:段燃 来源: 互联网
相关推荐

2018-04-18 09:18:44

数据库MySQL存储过程

2019-01-02 13:03:53

MySQL存储权限

2010-10-29 16:22:37

SQL存储过程

2010-07-06 14:06:52

SQL Server存

2010-07-15 12:38:14

SQL Server存

2011-07-14 13:38:34

2011-03-24 13:38:47

SQL Server 存储分页

2010-07-01 13:42:58

SQL Server存

2009-08-06 16:44:06

2010-09-25 16:00:38

sql存储过程

2010-09-07 15:12:25

SQL语句优化

2010-11-10 13:03:15

SQL Server存

2010-09-14 10:36:23

sql server存

2011-03-28 10:46:36

sql server存储分页

2010-09-27 16:04:00

2009-09-17 15:22:38

LINQ to SQL

2010-09-14 10:16:57

sql server

2009-09-17 15:51:39

Linq to sql

2010-11-12 09:46:55

Sql Server存

2010-11-12 12:01:08

Oracle存储过程
点赞
收藏

51CTO技术栈公众号