请问可以在存储过程中调用存储过程吗?

lifeforu 2002-06-23 12:31:31
请问可以在存储过程中调用存储过程吗?
如何实现?
在一个存储过程中要调用别一个存储过程的返回值,应该怎么操作?
...全文
146 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
武哥博文 2002-06-24
  • 打赏
  • 举报
回复
错就错在@SQL这条语句
试比较以下两句:
DECLARE @SQL nvarchar(200)
SELECT @SQL=N'SELECT * FROM ORDERS'
@SQL--有错误

DECLARE @SQL nvarchar(200)
SELECT @SQL=N'SELECT * FROM ORDERS'
exec sp_executesql @SQL --正确

lifeforu 2002-06-24
  • 打赏
  • 举报
回复
up,help
lifeforu 2002-06-24
  • 打赏
  • 举报
回复
declare fluxs scroll cursor for
@sql
这句话执行不通过,总是说@sql附近有语法错误
sdjnlf 2002-06-23
  • 打赏
  • 举报
回复
set @sql='GetFluxWithDateAndCoach ''' +@start_date +''','''+@end_date+''','''+@coach+''''
修改为
set @sql='EXEC GetFluxWithDateAndCoach ''' +@start_date +''','''+@end_date+''','''+@coach+''''

foolishchao 2002-06-23
  • 打赏
  • 举报
回复
CREATE PROCEDURE dbo.usp_test1 AS
create table #temp(names varchar(8))
insert into #temp values('test1')
insert into #temp values('test2')
select * from #temp
drop table #temp
GO

CREATE PROCEDURE [dbo].[usp_test2] AS
create table #test(names varchar(8))
insert #test exec dbo.usp_test1
DECLARE test_cursor CURSOR
FOR SELECT * FROM #test
OPEN test_cursor
FETCH NEXT FROM test_cursor
FETCH NEXT FROM test_cursor
close test_cursor
deallocate test_cursor
GO

--下面是调用
exec usp_test2
lifeforu 2002-06-23
  • 打赏
  • 举报
回复

急,谁可以给例子?
set @sql='GetFluxWithDateAndCoach ''' +@start_date +''','''+@end_date+''','''+@coach+''''
declare fluxs scroll cursor for
@sql
open fluxs
fetch next from fluxs into @fluxstation
close fluxs
deallocate fluxs
这儿执行不正确,该如何写?
lifeforu 2002-06-23
  • 打赏
  • 举报
回复
可是应该怎么执行?我怎么都不通过?
flydragon 2002-06-23
  • 打赏
  • 举报
回复
当然可以,你可以直接把存储过程的返回值赋给变量,然后来用
prjM 2002-06-23
  • 打赏
  • 举报
回复
在其中直接写Exec yourProcdure即可。
愉快的登山者 2002-06-23
  • 打赏
  • 举报
回复
可以调用,同一般程序调用存储过程。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧