我有2个选择的程序,看起来像这样...
PROCEDURE getRec
@pId INTEGER
AS
BEGIN
SELECT 'anything'
SELECT id, name
FROM my_table
WHERE id = @pId
END
当我的perl脚本调用此存储过程时,如果my_table
具有匹配的记录,则会显示该记录。但是,如果传入的ID不匹配,则存储过程将返回'anything'
。
如果第二个选择中没有行,那么我只希望该过程返回一个空结果集。我该如何实现?
答案 0 :(得分:0)
每个SELECT都会产生一个结果集(SELECT @var = ...除外)
因此将首先收到“任何内容”结果集
之后,您将收到空结果集。
您需要获取perl代码以获取第一个结果集中的所有行,然后获取下一个结果集并获取该结果集中的所有行。
获取下一个结果集的功能在很大程度上取决于您所使用的perl库。