我有程序dbo.GetData:
Create procedure dbo.GetData
As
Begin
Select * from dbo.tblName
End
我还创建了一个模式[ABC],表ABC.tblName
所以,我想通过使用另一个存储过程将过程dbo.GetData中的表的schema [dbo]更改为[ABC]。 结果是:
Create procedure dbo.GetData
As
Begin
Select * from [ABC].tblName
End
我该怎么做?
谢谢大家。
答案 0 :(得分:0)
我不确定我理解您的要求,但我认为您只想更改存储过程中正在执行的代码。如果是这样,一个简单的ALTER PROCEDURE
可以改变代码,但不是名称:
ALTER PROCEDURE dbo.GetData
AS
BEGIN
SELECT * FROM [ABC].tblName
END
[ALTER PROCEDURE]
1的完整语法(适用于SQL Server)
如果这不是你所追求的,请澄清问题。
更新:
我看到的唯一真正的解决方案是您编写脚本,然后使用文本编辑器将dbo.
值替换为[ABC].
值。
我只是尝试通过更新系统表来尝试这样做,但是在SQL Server 2012(我使用的)中,它简直太复杂了。
答案 1 :(得分:0)
试试这个希望,这对你有所帮助!
ALTER SCHEMA NewSchemaName TRANSFER OldSchemaName.ObjectName