2

这不是一个编程问题,更多的是对工具一的建议:-)

我正在寻找一种方法来防止脚本意外地在错误的 sql server 实例上运行,也就是说,您不必运行该脚本来清除实时/生产环境中开发环境中的客户。

我基本上追求的是企业管理器(或用于管理 sql server 实例的不同应用程序)的插件,这将允许我定义 SQL server 实例的连接详细信息列表,以便当窗口连接到LIVE 环境,它可以通过将选项卡涂成红色,或者弹出一个消息框说“这已连接到 XXXX 实例。你确定”

除了形式非常小心之外,是否有人对可以执行此操作或任何远程模拟的工具/插件有任何想法?

谢谢你的帮助

4

4 回答 4

4

我所有的脚本都以此开头:

if exists (select 1 from dbo.environment where value in('production', 'qa'))
  return

当然,这意味着我有一个环境表,其中有 'production' 、 'development' 、 'qa' 等,具体取决于它的托管位置。

于 2009-04-03T10:01:29.133 回答
2

你去: http ://www.ssmstoolspack.com/

这个免费的 SSMS 插件为每个服务器提供窗口着色。

于 2009-04-03T10:26:01.617 回答
1

此 SQL 代码检查您是否在正确的服务器上:

if @@servername <> 'testserver'
  RAISERROR ( 'Wrong server', 16, 1 );

错误(或返回)将阻止执行,直到下一个 GO 语句。例如,以下仍然会打印 hello world,并删除 user 表:

RAISERROR ( 'Wrong server', 16, 1 );
go
drop table users
print 'Hello world!'
go
于 2009-04-03T10:18:52.430 回答
0

您可以为您通常使用的用户在您的实时实例上设置不同的(有限的)访问权限。然后使用不同的用户名在实时系统上做任何严肃的事情。

于 2009-04-03T10:00:48.463 回答