[20130918]12c FETCH FIRST和绑定变量.txt-阿里云开发者社区

开发者社区> lfreeali> 正文

[20130918]12c FETCH FIRST和绑定变量.txt

简介: [20130918]12c FETCH FIRST和绑定变量.txthttp://connormcdonald.wordpress.com/2013/09/11/12c-fetch-first/重复测试:@ver BANNER                  ...
+关注继续查看
[20130918]12c FETCH FIRST和绑定变量.txt

http://connormcdonald.wordpress.com/2013/09/11/12c-fetch-first/

重复测试:

@ver
BANNER                                                                               CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production              0

drop table T purge;
create table T as select * from all_objects;

select owner, object_name, object_id from t order by owner, object_name FETCH FIRST 5 ROWS ONLY;

OWNER                OBJECT_NAME                     OBJECT_ID
-------------------- ------------------------------ ----------
APEX_040200          APEX                                88917
APEX_040200          APEX$ARCHIVE_CONTENTS               89744
APEX_040200          APEX$ARCHIVE_CONTENTS_IDX1          89748
APEX_040200          APEX$ARCHIVE_HEADER                 89742
APEX_040200          APEX$ARCHIVE_HISTORY                89749

variable x number
exec :x  := 5

select owner, object_name, object_id from t order by owner, object_name FETCH FIRST :x  ROWS ONLY;

OWNER                OBJECT_NAME                     OBJECT_ID
-------------------- ------------------------------ ----------
APEX_040200          APEX                                88917
APEX_040200          APEX$ARCHIVE_CONTENTS               89744
APEX_040200          APEX$ARCHIVE_CONTENTS_IDX1          89748
APEX_040200          APEX$ARCHIVE_HEADER                 89742
APEX_040200          APEX$ARCHIVE_HISTORY                89749


declare
  x number := 5;
begin
 for i in (
select owner, object_name, object_id
from t
order by owner, object_name
FETCH FIRST x ROWS ONLY
)
loop
  null;
end loop;
end;
/

*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 2580
Session ID: 128 Serial number: 57

--出现错误!

declare
  x number := 5;
begin
 for i in (
select owner, object_name, object_id
from t
order by owner, object_name
FETCH FIRST cast(x as number) ROWS ONLY
)
loop
  null;
end loop;
end;
/

PL/SQL procedure successfully completed.
--OK 这样通过。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10076 0
[20121102]PLSQL中的绑定变量.txt
[20121102]PLSQL中的绑定变量.txt     以前曾经遇到一个sql语句提交给开发,开发没有找到,最终确定是问题语句在PLSQL中,实际上PLSQL转化为大写, 加上自己没有注意.
584 0
[20160307]绑定变量的分配长度3.txt
[20160307]绑定变量的分配长度3.txt --如果绑定变量中字符串分配占用空间的长度变化,oracle会建立子光标。 --参考连接: http://blog.
654 0
[20160302]绑定变量的分配长度2.txt
[20160302]绑定变量的分配长度2.txt --如果绑定变量中字符串分配占用空间的长度变化,oracle会建立子光标。 --参考连接: http://blog.
610 0
PostgreSQL native partition 分区表性能优化之 - 动态SQL+服务端绑定变量
标签 PostgreSQL , 分区表 , native partition , 性能 , pg_pathman , plpgsql , 动态SQL , 服务端绑定变量 , prepare , execute 背景 目前PG的native partition分区性能不佳,一种解决方法是使用pg_pathman插件,另一种方法是业务上直接插分区,还有一种方法是使用UDF函数接口(函数内部使
693 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13884 0
[20170929]& 代替冒号绑定变量.txt
[20170929]& 代替冒号绑定变量.txt --//我昨天看链接,http://orasql.org/2017/09/27/ampersand-instead-of-colon-for-bind-variables/ --//重复测试: SCOTT@b...
686 0
【sql调优】绑定变量与CBO
SQL> var x1 number;SQL> exec :x1 :=1; PL/SQL 过程已成功完成。 SQL> set autot onSQL> set autot traceonlySQL> select count(*) from t where ...
428 0
+关注
lfreeali
熟悉oracle数据库性能优化,rman备份,数据库恢复技术.
2122
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载