Home Database Mysql Tutorial oracle下巧用bulk collect实现cursor批量fet

oracle下巧用bulk collect实现cursor批量fet

Jun 07, 2016 pm 05:45 PM
code name type

复制代码 代码如下:

  declare

  cursor c1 is select * from t_depart;

  v_depart t_depart%rowtype ;

  type v_code_type is table of t_depart.depart_code%type ;

  v_code v_code_type ;

  type v_name_type is table of t_depart.depart_name%type ;

  v_name v_name_type ;

  begin

  open c1;

  fetch c1 bulk collect into v_code , v_name ;

  for i in 1..v_code.count loop

  dbms_output.put_line(v_code(i)||' '||v_name(i));

  end loop;

  close c1;

  end;

  通过上面的这个列子大家可以发现如果列很多的话,为每一列定义一个集合似乎有些繁琐,可以把集合和%rowtype结合起来一起使用简化程序!

  复制代码 代码如下:

  declare

  cursor c1 is select * from t_depart;

  type v_depart_type is table of t_depart%rowtype ;

  v_depart v_depart_type ;

  begin

  open c1;

  fetch c1 bulk collect into v_depart ;

  for i in 1..v_depart.count loop

  dbms_output.put_line(v_depart(i).depart_code||' '||

  v_depart(i).depart_name);

  end loop;

  close c1;

  end;

  在输出结果时既可以使用集合的count属性和可以使用first和last,在引用%rowtype类型的内容时还有一个需要注意的地方是v_depart(i).depart_code,而不是v_depart.depart_code(i),当然没有这样的写法,即使有意义也并不一样。

  复制代码 代码如下:

  declare

  cursor c1 is select * from t_depart;

  type v_depart_type is table of t_depart%rowtype ;

  v_depart v_depart_type ;

  begin

  open c1;

  fetch c1 bulk collect into v_depart ;

  for i in v_depart.first..v_depart.last loop

  dbms_output.put_line(v_depart(i).depart_code||' '||

  v_depart(i).depart_name);

  end loop;

  close c1;

  end;

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1664
14
PHP Tutorial
1269
29
C# Tutorial
1248
24
What are the uses of the Type keyword in Go? What are the uses of the Type keyword in Go? Sep 06, 2023 am 09:58 AM

The usage of the Type keyword in Go includes defining new type aliases or creating new structure types. Detailed introduction: 1. Type alias. Use the "type" keyword to create an alias for an existing type. This alias does not create a new type, but only provides a new name for the existing type. Type aliases can improve code. The readability of the code makes the code clearer; 2. Structure type. Use the "type" keyword to create a new structure type. The structure is a composite type that can be used to define custom types containing multiple fields. etc.

Solve Ubuntu mounting mobile hard disk error: unknown file system type exfat Solve Ubuntu mounting mobile hard disk error: unknown file system type exfat Jan 05, 2024 pm 01:18 PM

An error occurs when ubuntu mounts a mobile hard disk: mount: unknownfilesystemtype'exfat'. The processing method is as follows: Ubuntu13.10 or install exfat-fuse: sudoapt-getinstallexfat-fuseUbuntu13.04 or below sudoapt-add-repositoryppa:relan/exfatsudoapt-getupdatesudoapt-getinstallfuse- exfatCentOS Linux mount exfat format USB disk error solution to load extfa in CentOS

Edit your Unity project in Visual Studio Code and you are now ready to go Edit your Unity project in Visual Studio Code and you are now ready to go Aug 08, 2023 am 10:21 AM

Microsoft has released a preview version of the Unity extension for Visual Studio Code. This new Unity extension will allow you to write and debug Unity games. This new Unity extension brings some popular features already available in Visual Studio and Visual Studio Tools for Unity, making C# in Visual Studio Code better for Unity development. Currently, the Unity extension for VSCode provides the following: A Unity debugger for debugging your Unity editor and Unity player. Unity-specific C# analyzer and refactoring. Uni

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Linux type command Linux type command Mar 20, 2024 pm 05:06 PM

In this guide, we will learn more about the "type" command in Linux. Prerequisites: To perform the steps demonstrated in this guide, you need the following components: A properly configured Linux system. See how to create a LinuxVM for testing and learning purposes. Basic understanding of the command line interface The Type command in Linux is different from other Linux-specific commands (for example: ls, chmod, shutdown, vi, grep, pwd, etc.). The "type" command is a built-in Bash function that is displayed as an argument. Information about the command type provided. $type In addition to Bash, other shells (Zsh, Ksh, etc.) also come with

HTML and Code: A Closer Look at the Terminology HTML and Code: A Closer Look at the Terminology Apr 10, 2025 am 09:28 AM

HTMLisaspecifictypeofcodefocusedonstructuringwebcontent,while"code"broadlyincludeslanguageslikeJavaScriptandPythonforfunctionality.1)HTMLdefineswebpagestructureusingtags.2)"Code"encompassesawiderrangeoflanguagesforlogicandinteract

What information is required when registering a Deepseek account? What information is required when registering a Deepseek account? Mar 12, 2025 pm 02:33 PM

Required information: 1. Email registration; 2. Mobile phone number registration; 3. Third-party social platform registration. After successful registration, you usually need to fill in some basic personal information, such as nickname, gender, birthday, etc.

What are the principles and usage of Redis type and encoding encoding? What are the principles and usage of Redis type and encoding encoding? May 29, 2023 pm 04:21 PM

Abstract Redis is an open source, high-performance key-value database that is widely used in various scenarios. In Redis, data type (type) and encoding (encoding) are very important concepts. This blog will introduce in detail the data types supported by Redis as well as the corresponding encoding methods and underlying implementation principles. To view the internal encoding of a Redis key, you can use the Redis command OBJECTENCODINGkey. Among them, key is the key name you want to query. For example, if you want to query the internal encoding of a key named mykey, you can execute the following command: 127.0.0.1:6379>objectencodin

See all articles