我需要一些帮助来循环遍历Table值参数的每一行。
我有用户定义的类型
CREATE TYPE [dbo].[PCS_SPEC_ATTR_VALUE] AS TABLE(
[ATTR_NAME] [varchar](256) NULL,
[ATTR_VAL] [varchar](4000) NULL
)
我在我的程序中使用此类型
@P_TYPE VARCHAR(4000),
@P_SCOPE VARCHAR(4000),
@P_PART_CLS_ATTR PCS_SPEC_ATTR_VALUE readonly
我使用P_PART_CLS_ATTR作为输入,我可以将数据作为attr_name和attr_value插入。我想逐行访问插入值的每一行。我需要获取属性名称和值处理它们并返回插入..可以任何一个帮助如何逐行访问值?
答案 0 :(得分:4)
下面是游标提取的示例代码段。注释是您可以插入“处理它们并返回以插入”代码的地方。
DECLARE
@ATTR_NAME varchar(256)
, @ATTR_VAL varchar(4000);
DECLARE NameAndValue CURSOR LOCAL FAST_FORWARD FOR
SELECT
ATTR_NAME
, ATTR_VAL
FROM @P_PART_CLS_ATTR;
OPEN NameAndValue;
WHILE 1 = 1
BEGIN
FETCH NEXT FROM NameAndValue INTO @ATTR_NAME, @ATTR_VALUE;
IF @@FETCH_STATUS = -1 BREAK;
--process returned @ATTR_NAME and @ATTR_VALUE values here
END;
CLOSE NameAndValue;
DEALLOCATE NameAndValue;