VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2054|回复: 9

怎么实现这样的写法?

[复制链接]

2

主题

21

帖子

18.00

积分

新手上路

Rank: 1

积分
18.00
发表于 2020-3-19 14:00:01 | 显示全部楼层 |阅读模式
DECLARE
  A NUMBER(16,2);
  B NUMBER(16,2);
BEGIN
  SELECT FIELD1 INTO A,FIELD2 INTO B FROM TABLE;
END;

发现ORACLE好象只能用一个参数接收.有没有类似的功能实现呢?
回复

使用道具 举报

0

主题

39

帖子

23.00

积分

新手上路

Rank: 1

积分
23.00
发表于 2020-6-23 23:45:01 | 显示全部楼层
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT * INTO A FROM TABLE ...;
END;

--可以用个记录类型
回复

使用道具 举报

2

主题

21

帖子

18.00

积分

新手上路

Rank: 1

积分
18.00
 楼主| 发表于 2020-6-24 14:30:01 | 显示全部楼层
没用过.又要请你帮忙了
呵呵.是不是要自己定义一个结构.
然后再接收?
回复

使用道具 举报

0

主题

71

帖子

50.00

积分

新手上路

Rank: 1

积分
50.00
发表于 2020-7-2 15:45:01 | 显示全部楼层
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT * INTO A FROM TABLE ...;
END;
这个就是将table所有的字段,作为一个table的结构,放入A中
回复

使用道具 举报

2

主题

21

帖子

18.00

积分

新手上路

Rank: 1

积分
18.00
 楼主| 发表于 2020-7-8 22:00:01 | 显示全部楼层
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT * INTO A FROM TABLE ...;
END;
报错.
%这有错..
我试了一下游标.能实现.
再问个问题.怎么获得游标记录数的COUNT?
回复

使用道具 举报

2

主题

21

帖子

18.00

积分

新手上路

Rank: 1

积分
18.00
 楼主| 发表于 2020-7-22 22:15:01 | 显示全部楼层
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT * INTO A FROM TABLE ...;
END;

假设记录数大于1的时候好象有错误.
回复

使用道具 举报

2

主题

21

帖子

18.00

积分

新手上路

Rank: 1

积分
18.00
 楼主| 发表于 2020-7-23 06:00:02 | 显示全部楼层
假设我这样写的话就错误了.
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT FIELDA,FIELDB INTO A FROM TABLE ...;
END;
应该和定义部分有关系的吧,
A TABLE%ROWTYPE...这的TABLE有关吧,
回复

使用道具 举报

0

主题

39

帖子

23.00

积分

新手上路

Rank: 1

积分
23.00
发表于 2020-7-25 13:15:01 | 显示全部楼层
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT * INTO A FROM TABLE ...;
END;
报错.
%这有错..
我试了一下游标.能实现.

再问个问题.怎么获得游标记录数的COUNT?
定义一个变量a
open cursor
循环取游标变量
a:=cursor%rowcount;
--cursor%rowcount确定从游标中取到的记录行数,只有游标的纪录都获取了,才能得到游标的记录数



回复

使用道具 举报

0

主题

39

帖子

23.00

积分

新手上路

Rank: 1

积分
23.00
发表于 2020-7-25 13:45:01 | 显示全部楼层
DECLARE
  A TABLE%rowtype;
BEGIN
  SELECT * INTO A FROM TABLE ...;
END;

假设记录数大于1的时候好象有错误.
--
大于1,你可以用游标
回复

使用道具 举报

0

主题

13

帖子

13.00

积分

新手上路

Rank: 1

积分
13.00
发表于 2020-7-27 12:00:02 | 显示全部楼层
很多人不看书,也不搜索,直接跑来问些很简单的问题。 建议初学者还要是打好基础,多看书,多查资料。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表