sql-server - 仅当存储过程中有值时如何显示结果集
问题描述
DECLARE @ONYX_ID INT
DECLARE cur CURSOR FOR
SELECT iIndividualID
FROM [ONYX_KAPLAN].[dbo].[Individual]
WHERE iIndividualID <= 1010918
OPEN Cur
FETCH NEXT From cur INTO @ONYX_ID
WHILE @@FETCH_STATUS = 0
BEGIN
----How to say not to create result set if no value-----------
---Unable to create temp table in this database-------
EXEC csprgCustomerProduct_TranscriptItem_KAP @ONYX_ID
FETCH NEXT FROM Cur INTO @ONYX_ID
END
CLOSE Cur
DEALLOCATE Cur
解决方案
csprgCustomerProduct_TranscriptItem_KAP
根据我的理解,如果不返回任何记录,您不需要结果集。
因此,您可以在过程的结果集中使用 IF EXISTS。如果返回查询中存在任何记录,则它应该给出结果,否则没有结果集。
推荐阅读
- arrays - 在数组公式中使用可变行
- reactjs - 在 React 中进行测试:如何从 testfile 中设置状态?
- gdb - GDB:无法读取符号:文件格式无法识别
- terraform - 如何使用 Terraform 实现重试模式?
- c# - GPS 将 16 位十六进制值转换为经度和纬度
- javascript - Node.js 将目录树转换为 JSON
- mysql - MySQL分组计数
- javascript - 有没有办法使用 react-dnd 返回放置目标的类名?
- solr - IndexBasedSpellChecker 中的 maxEdits 和 minPrefix 参数不会对拼写检查术语建议产生任何影响
- r - 在第 17 行第 5 列扫描简单键时 YAML 出错,在第 22 行第 1 列找不到预期的“:”