zoukankan      html  css  js  c++  java
  • SqlServer更新视图存储过程函数脚本

    --视图、存储过程、函数名称
    DECLARE @NAME NVARCHAR(255);
    --局部游标
    DECLARE @CUR CURSOR
    --自动修改未上状态为旷课
    SET @CUR=CURSOR SCROLL DYNAMIC FOR
    SELECT NAME FROM DBO.SYSOBJECTS
        WHERE NAME NOT IN ('SYSCONSTRAINTS','SYSSEGMENTS')
            AND
            (
                OBJECTPROPERTY(ID, N'IsView') = 1               --视图
                OR OBJECTPROPERTY(ID,N'IsProcedure') = 1        --存储过程
                OR OBJECTPROPERTY(ID,N'IsScalarFunction') = 1   --标量函数
                OR OBJECTPROPERTY(ID,N'IsTableFunction') = 1    --标题函数
                OR OBJECTPROPERTY(ID,N'IsInlineFunction') = 1   --内联函数
            );
     
    OPEN @CUR;
    FETCH NEXT FROM @CUR INTO @NAME
     
    WHILE (@@FETCH_STATUS=0)
    BEGIN
     
        DECLARE @OldText NVARCHAR(MAX);
        DECLARE @NewText NVARCHAR(MAX);
     
        --读取创建脚本,当脚本超长时分成多条记录时合并
        SELECT @OldText=@OldText + CHAR(10) + CHAR(13) + RTRIM(TEXT) FROM SYSCOMMENTS WHERE ID = OBJECT_ID(@NAME);
     
        --将创建脚本替换为更新脚本
        SET @NewText=REPLACE(@OldText,N'CREATE VIEW',N'ALTER VIEW');
        SET @NewText=REPLACE(@NewText,N'CREATE PROCEDURE',N'ALTER PROCEDURE');
        SET @NewText=REPLACE(@NewText,N'CREATE FUNCTION',N'ALTER FUNCTION');
         
        BEGIN TRY
            EXEC(@NewText);
        END TRY
        BEGIN CATCH
            PRINT N'---------------------------------------------------------------------------';
            PRINT @NAME + N' : ' + ERROR_MESSAGE();
            --PRINT @OldText;
            PRINT N'---------------------------------------------------------------------------';
        END CATCH
     
        FETCH NEXT FROM @CUR INTO @NAME
     
    END
     
    CLOSE @CUR;
    DEALLOCATE @CUR;
  • 相关阅读:
    clear:both其实是有瑕疵的
    CSS3不遥远,几个特性你要知道
    JavaScript使用数组拼接字符串性能如何?
    CSS网页宽度怎么定比较合适
    浅析JavaScript的垃圾回收机制
    淡入淡出效果的js原生实现
    非阻塞式JavaScript脚本及延伸知识
    HTML5 Canvas圣诞树
    Ubuntu查看和自动挂载硬盘
    正则表达式批量重命名
  • 原文地址:https://www.cnblogs.com/fhuafeng/p/4177842.html
Copyright © 2011-2022 走看看