zoukankan      html  css  js  c++  java
  • aspnet_RegisterSchemaVersion///aspnet_Setup_RestorePermissions////aspnet_UnRegisterSchemaVersion

    aspnet_RegisterSchemaVersion
    ALTER  PROCEDURE [dbo].aspnet_RegisterSchemaVersion --不知道是不是注册版本的意思
        @Feature                   NVARCHAR(128),
        
    @CompatibleSchemaVersion   NVARCHAR(128),
        
    @IsCurrentVersion          BIT,
        
    @RemoveIncompatibleSchema  BIT --移除不兼容的版本
    AS
    BEGIN
        
    IF@RemoveIncompatibleSchema = 1 ) --如果为真
        BEGIN
            
    DELETE FROM dbo.aspnet_SchemaVersions WHERE Feature = LOWER@Feature )
             
    ---删除此记录
        END
        
    ELSE
        
    BEGIN
            
    IF@IsCurrentVersion = 1 ) --如果是当前版本
            BEGIN
                
    UPDATE dbo.aspnet_SchemaVersions
                
    SET IsCurrentVersion = 0
                
    WHERE Feature = LOWER@Feature )
             
    -----更新当前版本为0
            END
        
    END

        
    INSERT  dbo.aspnet_SchemaVersions( Feature, CompatibleSchemaVersion, IsCurrentVersion )
        
    VALUESLOWER@Feature ), @CompatibleSchemaVersion@IsCurrentVersion )
       
    /*如果是兼容的版本且不是当前的版本则开始插入数据*/
    END
    aspnet_Setup_RestorePermissions
    ALTER  PROCEDURE [dbo].aspnet_Setup_RestorePermissions
        
    @name   sysname
    AS
    BEGIN
        
    DECLARE @object sysname
        
    DECLARE @protectType char(10)
        
    DECLARE @action varchar(20)
        
    DECLARE @grantee sysname
        
    DECLARE @cmd nvarchar(500)
        
    DECLARE c1 CURSOR FORWARD_ONLY FOR
            
    SELECT Object, ProtectType, [Action], Grantee FROM #aspnet_Permissions where Object = @name
         
    /*DECLARE @local_variable在批处理或过程的正文中用 DECLARE 语句声明变量,
            并用 SET 或 SELECT 语句给其指派值。游标变量可通过该语句声明,
            并且可用在其它与游标相关的语句中。所有变量在声明后均初始化为 NULL。
    */

        
    OPEN c1
        
    /*OPEN 打开 Transact-SQL 服务器游标,然后通过执行在 DECLARE CURSOR 或 
          SET cursor_variable 语句中指定的 Transact-SQL 语句填充游标。
    */


        
    FETCH c1 INTO @object@protectType@action@grantee
         
    /*FETCH 从 Transact-SQL 服务器游标中检索特定的一行。*/
        
    /*INTO @variable_name[,n]允许将提取操作的列数据放到局部变量中。
           列表中的各个变量从左到右与游标结果集中的相应列相关联。各变量的数据
          类型必须与相应的结果列的数据类型匹配或是结果列数据类型所支持的隐性转换。
         变量的数目必须与游标选择列表中的列的数目一致。
    */

        
    WHILE (@@fetch_status = 0)
        
    BEGIN
            
    SET @cmd = @protectType + ' ' + @action + ' on ' + @object + ' TO [' + @grantee + ']'
            
    EXEC (@cmd)
            
    FETCH c1 INTO @object@protectType@action@grantee
        
    END

        
    close c1
        
    deallocate c1
    END

    aspnet_UnRegisterSchemaVersion
    ALTER  PROCEDURE [dbo].aspnet_UnRegisterSchemaVersion
        
    @Feature                   NVARCHAR(128),
        
    @CompatibleSchemaVersion   NVARCHAR(128)
    AS
    BEGIN
        
    DELETE FROM dbo.aspnet_SchemaVersions
            
    WHERE   Feature = LOWER(@FeatureAND @CompatibleSchemaVersion = CompatibleSchemaVersion
         
    /*删除符合条件的记录,好象着条才是简单的语句*/
    END
  • 相关阅读:
    SAP资产变动明细
    SAP资产明细报表
    SAP连接HANA数据库
    工程变更记录报表
    SELECTION-SCREEN 文本丢失
    FG函数模块
    DOI EXCEL显示报表
    OLE填充EXCEL
    下载模板,上传EXCEL
    SELECTION-SCREEN 加按钮
  • 原文地址:https://www.cnblogs.com/ruanbl/p/491900.html
Copyright © 2011-2022 走看看