Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 获取SQL Server中重命名后存储过程的文本_Sql Server_Stored Procedures - Fatal编程技术网

Sql server 获取SQL Server中重命名后存储过程的文本

Sql server 获取SQL Server中重命名后存储过程的文本,sql-server,stored-procedures,Sql Server,Stored Procedures,我今天遇到了一个奇怪的问题。。。。我对存储过程执行了sp_helptext,但CREATE procedure语句(在结果中)中的存储过程名称与我在sp_helptext语句中使用的名称不一致(请参见下面的屏幕截图)。我尝试从sys.all_sql_模块和OBJECT_定义中进行选择,但结果相同 在下面的示例中,我使用了InvIRCode\u GetByInvIRID,但结果显示InvIRCode\u GetListByInvIRID 我做了一些研究,它似乎是一个已知的SQL Server错误,

我今天遇到了一个奇怪的问题。。。。我对存储过程执行了sp_helptext,但CREATE procedure语句(在结果中)中的存储过程名称与我在sp_helptext语句中使用的名称不一致(请参见下面的屏幕截图)。我尝试从sys.all_sql_模块和OBJECT_定义中进行选择,但结果相同

在下面的示例中,我使用了InvIRCode\u GetByInvIRID,但结果显示InvIRCode\u GetListByInvIRID

我做了一些研究,它似乎是一个已知的SQL Server错误,并且在重命名存储过程时发生

我的问题是:如何获得存储过程的正确源代码

有趣的是,当我在SQLServerManagementStudio的对象资源管理器中右键单击sp并选择将过程编写到新窗口时,它确实给出了正确的代码


注意此警告消息由
sp\u rename
返回:

Caution: Changing any part of an object name could break scripts and stored procedures.

sp\u rename
不会更改目录视图中的文本。当您通过SSMS或SMO编写过程脚本时,将更正过程名称。重命名后,您可以使用该脚本更改(或删除/创建)模块,以修复目录视图中的文本。

停止搜索奇迹。这是一个已知的问题,考虑到自首次发现以来已经过去了很长一段时间,它不太可能很快改变。您可以调整代码以进行补偿,或者将数据库模式/ddl存储在源代码管理中(您应该这样做)。