我是 SQL 新手,正在尝试编写存储过程。我在获取默认值作为输出结果时遇到了一些困难。
我有 2 张桌子:
学生输入:
InputID SectionID ParameterName Sequence
------------------------------------------------
1 100 FirstName 1
2 100 MiddleName 2
3 100 LastName 3
学生输入详细信息:
ParameterName ParameterValue DefaultValue
-----------------------------------------------------
FirstName John 1
FirstName Troy 0
FirstName Mark 0
我正在尝试调用ParameterName
fromStudent_Input
及其默认值Student_Input_Details
作为一个表中的输出。我正在尝试以下查询,但出现以下错误:
消息 201,级别 16,状态 4,过程 Getparameterdefaultvalues,第 0 行
过程或函数“Getparameterdefaultvalues”需要未提供的参数“@ParameterValue”。
我确定我在这里遗漏了一些重要的东西。
我的查询如下。我正在学习,这可能是一个简单的问题。谢谢........
CREATE PROCEDURE Getparameterdefaultvalues
(
@ParameterName varchar(50) ,
@ParameterValue varchar(50) OUT
)
AS
BEGIN
SELECT @ParameterValue = DefaultValue FROM ParameterInput_Values
WHERE ParameterName=@ParameterName
END
DECLARE @ParameterValue varchar(50)
EXEC Getparameterdefaultvalues @ParameterName = 1, @ParameterValue OUTPUT
PRINT 'Result is: ' + @ParameterValue
我需要这样的结果(即ParameterName
应该只在运行时显示其默认值):
ParameterName ParameterValue
----------------------------------
FirstName John
我在其他博客上尝试过,但无法解决这个问题。抱歉,如果我的问题没有那么清楚。任何帮助都会很棒!谢谢