zoukankan      html  css  js  c++  java
  • 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(即本次窗口)无法再执行任何语句(不管执行什么都仅显示【命令已完成】),新开窗口后就没事。

  • 相关阅读:
    JDBC 处理sql查询多个不确定参数
    网页跳转方法总结
    图片上传,直接在网页中显示(支持IE,谷歌,火狐浏览器)
    Oracle报 ORA-00054资源正忙的解决办法
    js对cookie的操作:读、写、删
    认识SignalR
    sql 查询结果用逗号分隔到一列里
    异步编程之await的使用
    应用程序池
    判断list重复扩展方法
  • 原文地址:https://www.cnblogs.com/liuyouying/p/6376417.html
Copyright © 2011-2022 走看看