这是一个用 SQL Server Management Studio 编写的简单存储过程。
它编译得很好,但我在调用它时遇到问题:(
CREATE PROCEDURE [dbo].[DetermineVoltage]
@itemDescription varchar(225) ,
@voltageRating varchar(225) OUTPUT
AS
BEGIN
SELECT
@voltageRating = REVERSE(SUBSTRING(REVERSE(@itemDescription),
charindex(' V', REVERSE(@itemDescription)) + 2,
CHARINDEX(' ', REVERSE(@itemDescription), charindex(' V', REVERSE(@itemDescription)) + 1) - charindex(' V', REVERSE(@itemDescription)) - 2))
RETURN
END
在 SQL Server Management Studio 中,当我像这样执行此存储过程时:
DECLARE @voltageRating VARCHAR(225)
exec dbo.DetermineVoltage['test 20V', @voltageRating]
我得到一个错误
Procedure or function 'DetermineVoltage' expects parameter '@voltageRating', which was not supplied.
有许多 SO 答案讨论了相同的错误消息,但是当从 C# 程序执行时。
但是,就我而言,如何在 SQL Server Management Studio 中执行存储过程?
最佳答案
declare @voltageRating varchar(225);
exec dbo.DetermineVoltage 'test 20V', @voltageRating output;
作为旁注,您可能希望将此过程转换为 function .
关于c# - 在 SQL Server Management Studio 中执行一个简单的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20421333/