巧用SET选项设置SQL Server客户端配置
2009-05-09 10:28:38 来源:WEB开发网所以说如果SET选项跟一些批处理程序一起使用时,就需要特别注意这个SET选项的位置。因为这个SET选型是否生效直接跟批处理程序中其他语句的执行情况相关。如现在一个批处理程序中有8条语句,而SET选型就是其中的一条如在第五条。如果在执行这个批处理程序的时候,在第三条语句的时候卡住了,那么这个第五条的SET选项语句就根本不起作用。为此笔者建议数据库管理员,像这些SET选项语句通常情况下最好放置在批处理程序的前面部分,以初始化批处理程序的相关运行环境。除非有特别的需要,否则的话不要放置在中间。
二、要注意SET选项的作用范围。
其实SET选项设置的参数与数据库服务器的默认参数就好像是一个局部变量与全局变量的关系。前者设置的参数就是一个局部变量,其只有在一个特定的范围内有效;离开了这个范围的话,就会失效。而全局变量的话通常情况下都是有效的,除非在某个领域内又对其重新赋值了。所以说,数据库管理员必须要了解SET选型的作用范围,为后续引用这些参数做好准备。具体来说,这些SET选项,往往跟不同的功能结合使用。如跟批处理程序、跟触发器等等结合使用。而随着这个使用范围的不同,其作用范围也是不同的。
1、在会话过程中有效。有些SET选项是专门针对客户端连接的。如笔者刚开始提起过的那个SET选型,其就是专么用来设置客户端的连接参数的。这些参数可能跟服务器的默认参数之间存在着比较大的差异。那么这些参数的作用范围是多少呢?通常情况下,针对专门会话所这支的SET选项,其在重置或者服务器中用户的会话终止之前有效。也就是说,在客户端连接的初始化过程中SET选项生效。只要用户的这个会话没有终止,这些选项都是生效的。除非用户终止了当前的会话或者服务器强制重置相关参数,否则的话这个SET选项随着会话启用而生效,随着会话终止而失效。另外需要注意的是,针对某个用户设置的SET选项,其只对这个用户的会话有效,而不会影响到其他用户跟数据库之间的通信。
更多精彩
赞助商链接