SQL服务器如何避免Ctrl-E执行意外?

How to avoid Ctrl-E execute accidents with SQL Server?

SQL Server Management Studio 在按下 Ctrl-E 后执行整个脚本。

对于手动维护脚本文件,我已经注释掉了所有UPDATE、INSERT和DELETE语句。

然后仅通过选择要执行的 SQL 脚本来执行。

还有其他方法可以避免 Ctrl-E 执行意外吗?

在 SQL Server Management Studio 中,您可以删除快捷方式 CTRL+E 来执行查询。

转到菜单中的工具 > 选项,然后转到左侧树中的环境 > 键盘 > 键盘。然后右边selectQuery.Executetable。 Select 快捷方式 CTRL+E (SQL Query Editor) 然后单击移除以移除快捷方式。然后,您将无法在单击 CTRL+E 时执行查询。

为了防止从头到尾执行整个脚本文件,并且只允许 运行 个选定的片段,这可行:

WHILE 1=1
  PRINT 'NOT ALLOWED, press the STOP button'

PRINT 'After WHILE, will not show unless executed manually'

GO

PRINT 'After GO, will not show unless executed manually'

由于服务器进入非常繁忙的循环,点击STOP按钮时可能不会立即停止,但最终会停止。

为了完整起见,这里是 STOP 按钮:

在脚本顶部添加 set noexec on;。这将阻止文件中的 运行 any 语句。