在SQL Server 2008中,设在某数据库中建有如下所示的存储过程: CREATE PROC P1 @a int=20,@b char(4) AS…… 设有下列调用该存储过程的语句: Ⅰ.EXEC P1 100.ˊa01ˊ Ⅱ.EXEC P1ˊa01

admin2021-06-28  34

问题 在SQL Server 2008中,设在某数据库中建有如下所示的存储过程:
CREATE PROC P1
@a int=20,@b char(4)
AS……
设有下列调用该存储过程的语句:
Ⅰ.EXEC P1 100.ˊa01ˊ
Ⅱ.EXEC P1ˊa01ˊ
Ⅲ.EXEC P1@b=ˊa01ˊ
Ⅳ.EXEC P1@a=default.@b=ˊa01ˊ
上述语句中,能够正确调用该存储过程的是(    )。

选项 A、仅Ⅰ和Ⅱ
B、仅Ⅰ、Ⅱ和Ⅲ
C、仅Ⅰ、Ⅲ和Ⅳ
D、全部

答案C

解析 由题目存储过程可知,存储过程P1定义了两个带有默认值的参数。执行多个输入参数的存储过程时,参数的传递方式有两种:按照参数位置传递值和按参数名称传递值。如果定义了默认值,则在执行存储过程时可以不必指定该参数的值。但若按照参数位置传递值时必须从左往右赋值,即不能跳过左边的某个默认参数而传递某个值。Ⅱ中的参数赋值采用按参数位置传值,必须从左到右赋值。其他三项均符合存储过程的调用规则。
转载请注明原文地址:https://kaotiyun.com/show/EBeZ777K
0

最新回复(0)