`

带参数的CURSOR如何使用?

    博客分类:
  • sql
阅读更多

--定义cursor
    cursor cuhdr(run_number number, unit number) is
      select * from plsql_profiler_units
        where runid = run_number and unit_number = unit;
    unit_row cuhdr%rowtype;....
--打开cursor
    open cuhdr(run_number, unit);
--取数
    fetch cuhdr into unit_row;
--关闭cursor
    close cuhdr;

==================================================

my work example:

create or replace function query_available_lines(p_serial_num in varchar2,
                                                 p_query_type in varchar2)
  return varchar2 is

  ----------------------------------------------
  cursor available_krh_line(p_sn varchar2) is(
    select line_id
      from work_order woa
     where woa.order_state = 1
       and woa.order_type = 'KRH'
       and woa.pid in
           (select pid
              from product_level pl
             where pl.child_pid in
                   (select (select pid
                              from product_maintain pm
                             where pm.product_number = ls.product_number
                               and pm.rstate = ls.rstate) newpid
                      from label_sn ls
                     where ls.sn = p_sn)));
  cur_row available_krh_line%rowtype;
  -----------------------------------------------------

  v_result_lines varchar2(1000) := ' ';

 
  --------------------------------------------------------------
begin
  if p_query_type = 1 then
    ----------------Return KRH level available line----
    open available_krh_line(p_serial_num);
    loop
   
      fetch available_krh_line
        into cur_row;
      exit when available_krh_line%notfound;
      v_result_lines := v_result_lines || '#' || cur_row.line_id;
   
    end loop;
    close available_krh_line;

分享到:
评论

相关推荐

    Cursor的用法.docx

    本篇文章将详细介绍如何使用`Cursor`以及在实际代码中的应用。 首先,我们需要创建一个`SQLiteHelper`类来操作数据库,比如`dbRead5`。`query()` 方法是用于执行SQL查询并返回一个`Cursor`对象。在这个例子中,我们...

    Java获取Oracle存储过程返回的Cursor

    该过程接受四个参数:P_STARTINDEX(开始索引),P_LIMIT(限制返回的行数),P_DEAL_TYPE(处理类型)以及CR(输出参数,用于返回Cursor)。存储过程内部使用了一个嵌套查询来过滤和排序数据,并将结果集绑定到输出...

    Oracle JOB,procedure,cursor 的使用

    3. 结合使用:在存储过程中,可以利用游标处理动态查询的结果,比如根据不同的输入参数,逐行处理结果并更新相关记录。 学习和掌握Oracle的JOB、PROCEDURE和CURSOR对于数据库管理员和开发者至关重要,它们能帮助你...

    oracle CURSOR例子

    当需要根据不同的条件来执行相同的查询时,可以使用带参数的游标。这种方式可以提高代码的复用性。 ##### 示例: ```sql DECLARE CURSOR cur_para(id VARCHAR2) IS -- 参数只需要一个类型 SELECT books_name FROM...

    A0608使用SQLiteCursor1

    SQLiteDatabase类提供了多种query()方法,它们的主要区别在于参数的灵活性,但核心功能都是执行SQL查询并返回Cursor。例如: - `query(String table, String[] columns, String selection, String[] selectionArgs,...

    cursor游标

    它常用于存储过程和函数中,将结果集作为输出参数传递。 4. **命名游标**:通过为显式游标指定名称,可以在PL/SQL块的不同部分引用同一个游标,方便共享和管理。 游标的使用步骤通常包括: 1. **声明**:使用...

    cursor的部分操作

    本文将详细介绍`Cursor`的一些基本操作及其使用方法。 #### `Cursor`简介 `Cursor`是一种轻量级的数据结构,它主要用来封装从数据库中获取的结果集。当执行完SQL查询语句后,会返回一个`Cursor`对象,这个对象包含...

    Laravel开发-cursor-pagination

    接下来,在控制器中,你可以使用`cursor()`方法来执行光标分页查询。下面是一个简单的例子: ```php use App\Models\YourModel; use Illuminate\Http\Request; public function index(Request $request) { $per...

    如何从 Java 存储过程将 JDBC ResultSet 作为 Ref Cursor 返回.doc

    由于Java不直接支持REF CURSOR作为参数类型,我们使用数组来模拟这一行为。当存储过程执行完毕后,DEPT表的所有数据会被填充到rout数组的第一个元素中。 为了运行这些Java存储过程,你需要在数据库中注册它们,并且...

    set_cursor_pos_SetCursorPos_Set-Cursor-Position_

    为了在LabVIEW中使用 `set_cursor_pos.vi`,你需要将这个VI拖放到你的主VI面板上,然后连接必要的输入,比如x和y坐标,可能还需要处理返回的布尔值以确认操作是否成功。此外,考虑到线程安全和用户交互性,通常需要...

    use_default_cursor.rar_-use_cursor_DEMO

    本DEMO "use_default_cursor.rar" 提供了一个关于如何在应用程序中使用预定义光标(Default Cursor)的实例,旨在帮助开发者更好地理解和应用这一技术。 首先,我们需要理解什么是预定义光标。预定义光标是数据库...

    Java调用带参数的存储过程并返回集合

    本话题将详细讲解如何使用Java调用带有参数的Oracle存储过程,并获取存储过程返回的集合。 首先,Oracle存储过程是一种预编译的SQL语句集合,它可以在数据库服务器端执行,提高性能,减少网络传输。`PROCEDURE.sql`...

    Python填充SQL参数脚本.zip

    在这个压缩包的Python脚本中,我们可以预期它包含一个函数或类,该功能接收带有占位符的SQL字符串和参数列表,然后生成一个准备好执行的SQL语句。脚本可能还包含了错误处理机制,确保参数类型与SQL语句中的占位符...

    Set-Cursor-Pos8.rar_labview cursor_mouse

    3. 使用LabVIEW的"System»Cursor»Set Mouse Position"函数,该函数需要两个输入参数,即X坐标和Y坐标。将这两个值连接到函数的输入端。 4. 执行VI,LabVIEW会将鼠标移动到指定的屏幕位置。 5. 为了验证效果,...

    机床数控系统的参数及报警

    - 使用<CURSOR>键定位需要修改的参数,或者通过键输入参数编号。 - 按键后输入新数值,错误的输入可通过键清除。 - 按键完成设定,并检查是否正确。 - 在完成所有参数设置后,将主板PCB上的选择开关置于...

    cursor-effects-master.zip

    为了使用这些特效,你需要: - 将压缩包解压,并将JavaScript文件引入到你的HTML页面中。 - 根据需求,可能需要调整CSS样式以匹配你的网页设计。 - 调整JavaScript代码中的参数,如雪花数量、大小、速度,以及幽灵...

    oracle 参数详解

    Oracle的CURSOR_SHARING参数是数据库性能优化中的一个重要设置,它决定了SQL语句在什么情况下可以共享相同的游标(cursor)。游标在Oracle数据库中扮演着关键角色,它们是执行查询时保存信息的结构,包括关于如何从...

    java调用oracle存储过程返回结果集,Record,cursor.[参考].pdf

    - 对于`OUT`参数,我们使用`registerOutParameter`来指定参数的位置(通常从1开始计数)和类型。在本例中,`OracleTypes.CURSOR`用于表示返回的游标。 - 执行存储过程后,通过`execute`方法,我们可以获取到结果集...

    ORACLE技术文档\oracle cursor 游标.doc

    如果频繁遇到该错误,可以考虑增加此参数的值,但更重要的是优化代码以减少游标的使用。 2. `cursor_sharing`:这个参数控制游标的复用策略。`EXACT`表示每个SQL语句都会有自己的专用游标,而其他值如`FUNCTIONAL`...

    cursor AI开发工具软件下载

    2. **模型训练与优化**:该工具支持多种主流的深度学习框架,如TensorFlow、PyTorch等,用户可以方便地在工具内进行模型训练,并且提供模型优化功能,包括超参数调整、模型压缩等,以适应不同场景的需求。...

Global site tag (gtag.js) - Google Analytics