我已经在网上搜索了是否可行,但是很遗憾,我没有找到任何答案。我只是想问一下这是否可行,因为当我尝试下面的代码时,它说:
数据库“ IPAddress”不存在。确保名称是 输入正确。
我知道该IP地址的凭据,因此我可以轻松登录并运行此sp。如果可能的话,我已经将服务器添加到链接服务器,只是出于好奇。
USE [IPAddress].[DatabaseName]
GO
/****** Object: StoredProcedure [dbo].[SP_Name] Script Date: 1/14/2020 10:36:26 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[SP_Name]
答案 0 :(得分:1)
我以前从未做过,但是显然您可以使用EXEC AT
类似这样的东西
EXEC ('USE [Database] GO ALTER PROC spName.....') AT [LinkedServer];
答案 1 :(得分:0)
您不能以这种方式使用USE命令。您只能为USE命令输入数据库名称。 Read more about USE
相反,您可以在SSMS中使用SQLCMD模式实现相同的目的。 Read more on SQLCMD mode
:CONNECT [ipaddress]
USE [Database]
GO
ALTER PROCEDURE [dbo].[spname]...
GO