在PL/SQL中用“SELECT TEST_SEQ.NEXTVAL FROM DUAL”居然取出两个值出来,哪为大侠有遇到这种情况吗?

yeyoujian 2004-07-30 05:01:05
在PL/SQL中用“SELECT TEST_SEQ.NEXTVAL FROM DUAL”居然取出两个值出来,哪为大侠有遇到这种情况吗?
...全文
1139 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ATCG 2004-08-02
  • 打赏
  • 举报
回复
DUAL有两条记录,删掉一条。。
在SQL*PLUS里你只能看到一条记录,虽然你的DUAL有两条记录
但在别的地方就可以看到两条记录了
dlgy 2004-08-02
  • 打赏
  • 举报
回复
意外
amami 2004-08-02
  • 打赏
  • 举报
回复
没见过,第一次听说 !
wylwyl1130 2004-08-02
  • 打赏
  • 举报
回复
没见过
dlab 2004-08-01
  • 打赏
  • 举报
回复
你是不是在DUAL插过数据?
jxc 2004-08-01
  • 打赏
  • 举报
回复
同意drabit(square)的说法
kaiji 2004-08-01
  • 打赏
  • 举报
回复
不可能吧!
zhpsam109 2004-08-01
  • 打赏
  • 举报
回复
不会吧,我没见过!
dinya2003 2004-07-30
  • 打赏
  • 举报
回复
对,select * from dual;有多少记录可以在pl/sql中看到.
drabit 2004-07-30
  • 打赏
  • 举报
回复
to bzbzp:

sqlplus作了特殊处理,pl/sql并没有特殊处理,你在toad或者pl/sql developer中执行以下就知道了
LGQDUCKY 2004-07-30
  • 打赏
  • 举报
回复
是不是你取了两次?得到的值是什么呢?
jiezhi 2004-07-30
  • 打赏
  • 举报
回复
怎么会有这样的情况
bzszp 2004-07-30
  • 打赏
  • 举报
回复
dual有多条数据也不会有这种情况
17:00:34 SQL>select count(*) from dual;

COUNT(*)
----------
3

已用时间: 00: 00: 00.15
17:00:45 SQL>create sequence seq_1 increment by

序列已创建。

已用时间: 00: 00: 00.16

已用时间: 00: 00: 00.62
17:01:39 SQL>select seq_1.nextval from dual;

NEXTVAL
----------
1

已用时间: 00: 00: 00.32
17:01:58 SQL>select seq_1.nextval from dual;

NEXTVAL
----------
2

已用时间: 00: 00: 00.16
17:02:01 SQL>select count(1) from dual;

COUNT(1)
----------
3

已用时间: 00: 00: 00.15
17:02:10 SQL>select seq_1.currval from dual;

CURRVAL
----------
2

已用时间: 00: 00: 00.16
17:02:22 SQL>
drabit 2004-07-30
  • 打赏
  • 举报
回复
dual表中有两条记录
bzszp 2004-07-30
  • 打赏
  • 举报
回复
怎么会呢
贴出来看看

17,138

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧