当前位置:首页 » 服务存储 » 结果集存储
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

结果集存储

发布时间: 2022-02-25 19:08:05

sql存储过程与结果集

直接这么写:
INSERT INTO TABLE1(field1,field2,...)
SELECT value1,value2,... from TABLE2 WHERE ...

存储过程最后直接写一个select 语句,外界就可以拿到这个结果集了,不需要用OUTPUT参数

② 存储过程如何把一个结果集放在一张表里面并返回来

结果集有必要放在表里面返回来,直接返回游标就可以了,结果集也可以看作是张表的。

DB2的的解决方案:
1.声明存储过程的时候,在声明之后添加 RESULT SETS 1,表示返回一个结果集,示例如下:
CREATE PROCEDURE YOUPRO(IN P_UserId INTEGER)
LANGUAGE SQL
RESULT SETS 1
------------------------------------------------------------------------
-- SQL 存储过程(获取用户信息)
------------------------------------------------------------------------
P1: BEGIN
--声明会使用到的参数
.... ....
... .....
2.在存储过程中声明一个游标,然后返回,示例如下:
DECLARE C1 CURSOR WITH RETURN FOR SELECT *FROM TABLE;
OPEN C1;

Oracle的解决方案:
1.先定义一个包,示例如下:
create or replace package CursorPackage as
type my_cursor is ref cursor;
end CursorPackage;
2.在存储过程返回参数使用这个定义的参数,示例如下:
create or replace procere YOUPRO(P_UserId IN NUMBER, C_Return OUT CursorPackage.my_cursor)IS ... ... ..
3.存储过程中,给返回参数赋值,示例如下:
OPEN C_Return FOR SELECT * FROM TABLE;

Sql Server的解决方案

直接返回SELECT * FROM TABLE,SqlServer中可以直接返回结果。

希望对你有帮助!

③ 求一java方法 把查询结果集用数组存储

是MAP表吗?先用Iterator遍历,然后写入数组就可以了。

④ 结果集存放在 List<Map<String,Object>>中怎么使用Java代码遍历获取String,Object的值

先遍历List
对于每一个Map值,要获取String的话,就是要获取它的key值集合,LZ可以看一下api,有这个方法的,貌似得到的结果是一个set集合,遍历这个set集合便可以得到每一个String值,从而也可以获取到对应的Object

⑤ 我想查询存储过程里面最后的结果集怎样查

定义一个内嵌表值函数返回一张表,然后就可以了。
需要注意的是:因为使用了CTE所以函数返回的时候不能排序,
需要在调用函数的时候才排序,比如:
select * from wuxian_paixu(1) ORDER BY youxian DESC
具体函数如下:
Create function wuxian_paixu (@Id int)
Returns Table AS
return(
WITH Record AS
(
SELECT Id,Name,ParentId,Depth,able,youxian,lujing FROM wuxian WHERE Id=@Id
UNION ALL
SELECT a.Id Id,a.Name Name,a.ParentId ParentId,a.Depth Depth,a.able Status,a.youxian Priority,a.lujing lujing
FROM wuxian a JOIN Record b ON a.ParentId=b.Id
)
SELECT Id,Name,ParentId,Depth,able,youxian,lujing
FROM Record WHERE able=1
)
select * from wuxian_paixu(1) ORDER BY youxian DESC

⑥ 如何返回存储过程中所有结果集

返回结果集不用Output,直接Select出来的结果集就能返回
在应用程序或网页程序中用你调用存储过程的这个对象像普通记录集一个调用就好了
如果是在查询分析器中执行,可以在下面的“网格”中直接看到返回的这个结果集

⑦ 如何将将数据库查询结果集存储到List当中去

你查询到的结果返回的是DataTable或者是DataSet将其进行循环,将其中的行(Row)添加到List泛型集合中即可

⑧ 使用SQL存储过程返回多结果集怎么处理

1、返回结果集

这是客户端应用程序返回结果的最通用的方法。结果集是通过使用SELECT语句选择数据产生的。结果集可以从永久表、临时表或局部变量中产生。将结果返回到另一个存储过程不是一种有效的方法。存储过程不能访问另一个存储过程建立的结果集。

例如从永久表中返回结果集:
USE pubs
GO
CREATE PROCEDURE ap_CreateResultFromPermtable
AS
SELECT au_iname FROM authors
例如从局部变量中创建结果集:

USE pubs
GO
CREATE PROCEDURE ap_CreateResultFromVariable
AS
DECLARE @au_iname char(20)
SELECT @au_iname = au_iname FROM authors
WHERE au_id = ‘172-32-1176’
SELECT @au_id
GO

⑨ 存储过程中如何使用结果集

1、子查询
SELECT...
FROM ...
WHERE id IN (
SELECT id

FROM ...

WHERE ...

)

2、ID结果集存入临时表,再用此表进行操作

3、针对每个结果id作复杂逻辑操作的话,使用CURSOR