我有一个带有许多参数的插入存储过程 - 其中两个是@FirstName、@LastName。
我还有一个更新存储过程,它采用许多参数 - 其中 2 个是@FirstName、@LastName。
我想要做的是,从插入 SP 内部,完成后,调用更新 SP 并将@FirstName、@LastName 发送给它。
我不知道这样做的正确语法;我试过:
exec LandData_Update @FirstName, @LastName
但我认为这是错误的。
谁能告诉我这个电话怎么写?
如果我将使用不同的参数名称调用更新 sp?比如@MyFirstName、@MyLastName?我会这样写吗:
EXECUTE LandData_Update @MyFirstName=@FirstName, @MyLastName=@LastName
?
最佳答案
是什么让你认为这是错误的?
CREATE PROCEDURE MyInsertSP
@FirstName varchar(255),
@LastName varchar(255)
AS
BEGIN
INSERT INTO Table VALUES('Some Value')
EXECUTE LandData_Update @FirstName, @LastName
END
你得到一个错误或什么?
编辑:
变量的名称是什么并不重要,但是要执行您想要的操作,您可以声明两个新变量。
DECLARE @MyFirstName varchar(255)
DECLARE @MyLastName varchar(255)
SET @MyFirstName = @FirstName
SET @MyLastName = @LastName
然后使用新变量。但同样,存储过程并不关心变量的名称。
关于sql - 如何从另一个存储过程调用一个存储过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1184325/