2017-09-06 63 views
-1

我想在Java代码的帮助下创建Oracle光标。我试图在互联网上搜索,但我没有找到任何东西。我们可以使用Java代码创建Cursor吗?使用Java程序创建Oracle光标

+0

通过哪个平台?你想实现什么? – sagi

+0

我们正试图优化我们的应用程序的性能。对不起,我没有得到第一个问题,平台是否指操作系统? –

+0

https://stackoverflow.com/q/43710288/1509264的副本 – MT0

回答

0

您不能使用Java代码创建游标。

游标是数据库内部数据结构的引用(指针),代表查询和相应的一组结果 - 在数据库之外创建指针将毫无意义。

Oracle Documentation

介绍REF CURSOR小号

使用REF CURSOR s是最强大的,灵活的,可扩展的方式来从Oracle数据库返回查询结果到客户端应用程序之一。

REF CURSOR是一个PL/SQL数据类型,其值是数据库上查询工作区的内存地址。实质上,REF CURSOR是数据库上结果集的指针或句柄。 REF CURSOR通过OracleRefCursor ODP.NET类来表示。

REF CURSOR■找以下特征:

  • REF CURSOR参照数据库上的存储器地址。因此,客户端必须在REF CURSOR的生存期内连接到数据库才能访问它。

  • A REF CURSOR涉及额外的数据库往返行程。在将REF CURSOR返回给客户端时,直到客户端打开REF CURSOR并请求数据时才会返回实际数据。请注意,直到用户尝试读取数据时才会检索数据。

  • A REF CURSOR不可更新。由REF CURSOR表示的结果集是只读的。您不能通过使用REF CURSOR来更新数据库。

  • A REF CURSOR不向后滚动。由REF CURSOR表示的数据是以只进,串行方式访问的。您不能在REF CURSOR内定位记录指针,以指向结果集中的随机记录。

  • A REF CURSOR是PL/SQL数据类型。您在PL/SQL代码块中创建并返回一个REF CURSOR

你需要创建一个返回游标,然后调用从您的外部应用程序的数据库存储过程(或函数)。