如何使用 SQL 语句导出存储过程的内容?
问问题
1665 次
4 回答
7
如果您通过“内容”谈论代码,请查看 sp_helptext()
http://msdn.microsoft.com/en-us/library/ms176112.aspx
这是一个基于旧 PUBS 示例数据库的示例
USE pubs;
GO
EXEC sp_helptext 'pubs.dbo.byroyalty';
GO
这是结果
Text --------
CREATE PROCEDURE byroyalty @percentage int
AS
select au_id from titleauthor
where titleauthor.royaltyper = @percentage
但是,如果“内容”是指结果;您可以使用“结果到文件...”设置运行 proc,或“网格中的结果”并右键单击网格,然后执行“另存为...”
于 2009-04-23T20:09:21.193 回答
2
sp_helptext系统存储过程可能会有所帮助。
sp_helptext YourProcedureName
如果您正在寻找类似的东西,我还使用print在存储过程中查看我生成的 sql:
CREATE PROCEDURE YourProcedureName
AS
DECLARE @sql varchar(100)
SET @sql = 'SELECT * FROM MyTable'
print @sql
--EXEC @sql
GO
于 2009-04-23T20:10:50.363 回答
1
内容是指代码?
如果是这样,你可以打电话
EXEC sp_helptext proc_name
请注意,您也可以使用视图名称来调用它
于 2009-04-23T20:09:53.533 回答
0
您可以查询“sys.sql_modules”目录视图来查找存储过程和存储函数的 SQL 源代码:
SELECT definition
FROM sys.sql_modules
WHERE object_id = OBJECT_ID('your stored proc name here')
马克
于 2009-04-23T20:21:40.337 回答