我对SQL Server不是很熟悉,对MySQL比较熟悉。
我习惯于在代码中看到一切,而 SQL Server,有些事情是用按钮完成的。在 MySQL 中,我会执行USE testing_database
,然后我知道我的后续查询将针对该数据库执行。
在 SQL Server Management Studio 中,我看到在下拉选择中选择了我的“测试数据库”。这是否意味着脚本中的查询将仅针对该数据库执行?
该脚本不包含对数据库名称的任何引用。它用于sp_msdependencies
填充视图列表,然后对该列表进行操作。只会对当前数据库执行吗?sp_msdependencies
除了测试数据库之外,还有其他几个数据库我不想在此测试中接触。
如果执行 use database语句,则后续查询将仅针对该数据库执行。但是:这仅适用于当前选项卡。
在 SSMS 中,要查看连接上下文,请查看当前选项卡的右下角。您应该在那里看到当前的数据库名称。
或者您可以使用以下命令查询当前数据库:
注意:可以打开多个选项卡,这些选项卡可以连接到不同的数据库或服务器。如果您打开并平铺了多个选项卡,可能会有点混乱。
作为额外的预防措施,您可以断开并关闭其他选项卡以防止发生任何事故。
一个 sql 脚本可能包含许多 sql 语句,并且可能包含另一个use database命令,该命令可能会通过脚本部分方式更改连接。在执行其他人提供的脚本之前,您应该阅读脚本或搜索此脚本。
最后一个警告:也可以使用注册服务器同时连接到多个数据库服务器。但是,除非您有意选择这样做,否则您极不可能遇到这种情况,即使是偶然发生的。