• SQL Server 验证库名,及中断执行


    今晚部门组织看电影,西游伏妖篇,IMAX3D。之前没看过IMAX,圆弧形大屏幕坐在正当中效果非常棒。去年还是前年看过一次蚁人,也是3D,但效果不好。这次就震憾多了,3D景深明显,很有立体感和层次感。就是音效太强了些,轰鸣一样。

    一个入职半年的同事要离职去成都发展了,下周就走,比较突然。

    年初会调一次工资,不知这次能加多少。但绩效考核有调整,以后可能绩效拿的没以前多了。不管怎样,还是工资基数增加好些,毕竟各种奖金都是拿工资去算的。

    项目里有些建表/改表/存储过程,想在开头加上库名的验证,以免运行错库,造成不必要的麻烦。有些注意点:

    1、可使用DB_NAME()来获取当前库名,比如IF DB_NAME() NOT LIKE '%XX'来进行验证

    2、使用RAISERROR来抛出异常,结果发现抛出异常后仍会继续往下执行

    3、在抛出异常后,使用RETURN来返回

    4、结果发现RETURN只能退出当前GO,如果脚本里有多个GO,后续的会继续执行

    5、搜了一下,可使用SET NOEXEC ON,这样相当于仅验证脚本不执行。即

    IF DB_NAME() NOT LIKE '%XX'
    BEGIN
        RAISERROR XXX
        SET NOEXEC ON;
    END
    
    XXX正文
    GO
    
    SET NOEXEC OFF;

    6、正文后跟的那句SET NOEXEC OFF不写也可以,但不写的话,本次Session(即本次窗口)无法再执行任何语句(不管执行什么都仅显示【命令已完成】),新开窗口后就没事。

  • 相关阅读:
    loadNibNamed 的使用
    重写UIPageControl实现自定义按钮(转)
    乔布斯办公室语录
    学ACM算法题有用吗?
    基于文法分析的表达式计算器的实现
    我的程序员之路(5)——工作一年
    XCode实用快捷键,谁用谁知道
    LR(1)语法分析表生成
    九大定律,四大原则
    汉字为何不能用笔画编码信息论系列
  • 原文地址:https://www.cnblogs.com/liuyouying/p/6376417.html
Copyright © 2020-2023  润新知