cursor重要实例应用

2024-09-03 22:58
文章标签 应用 实例 重要 cursor

本文主要是介绍cursor重要实例应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

cursor 应用:------
create or replace procedure proc_update_wce
--1
( v_adate8 nvarchar2 ) as
--2

 cursor c(c_adate8 attendance.adate8%type) is
 select e.emp_id,a.card_num,a.adate8,a.atime4,a.door,m.in_out
 from employee e,attendance a,atten_machine m
 where e.card_number = a.card_num
 and a.door = m.ma_id
 and a.adate8 = c_adate8
 order by e.emp_id,adate8,atime4;
--3
 v c%ROWTYPE;
begin
    --4     
     open c(v_adate8);
     loop
    --5
         fetch c into v;
   
         exit when c%notfound;

         update work_calen_emp w
         set in_time = v.atime4,
         door_in = v.door
         where w.emp_id = v.emp_id
         and w.bmouth || w.bday = v_adate8
         and v.in_out = 1;
        
         update work_calen_emp w
         set out_time = v.atime4,
         door_out = v.door
         where w.emp_id = v.emp_id
         and w.bmouth || w.bday = v_adate8
         and v.in_out = 2;
 --6
     end loop;
     close c;   
end;

 动态cursor 实例应用:---

 DECLARE
 
    TYPE emp_cur IS REF CURSOR
   
    RETURN emp%ROWTYPE;
 
    empObj emp_cur;
 
    empRecord emp%ROWTYPE;
 
  BEGIN
 
    OPEN empObj FOR
   
      SELECT * FROM emp;
 
    loop
   
      FETCH empObj
        INTO empRecord;
   
      exit when empObj%notfound;
   
      dbms_output.put_line(empRecord.ename);
   
    end loop;
 
    CLOSE empObj;
 
  END;

 

---------动态表名

--用动态sql写
declare
  table_name    varchar(10);
  sql_statement varchar2(1024) beginselect tname into table_name from T1;
  sql_statement := 'select source from ' || table_name;
  execute immediate sql_statement;
end;

 

 

 

这篇关于cursor重要实例应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134286

相关文章

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

SpringBoot整合jasypt实现重要数据加密

《SpringBoot整合jasypt实现重要数据加密》Jasypt是一个专注于简化Java加密操作的开源工具,:本文主要介绍详细介绍了如何使用jasypt实现重要数据加密,感兴趣的小伙伴可... 目录jasypt简介 jasypt的优点SpringBoot使用jasypt创建mapper接口配置文件加密

Python循环缓冲区的应用详解

《Python循环缓冲区的应用详解》循环缓冲区是一个线性缓冲区,逻辑上被视为一个循环的结构,本文主要为大家介绍了Python中循环缓冲区的相关应用,有兴趣的小伙伴可以了解一下... 目录什么是循环缓冲区循环缓冲区的结构python中的循环缓冲区实现运行循环缓冲区循环缓冲区的优势应用案例Python中的实现库

SpringBoot整合MybatisPlus的基本应用指南

《SpringBoot整合MybatisPlus的基本应用指南》MyBatis-Plus,简称MP,是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,下面小编就来和大家介绍一下... 目录一、MyBATisPlus简介二、SpringBoot整合MybatisPlus1、创建数据库和

Spring 中使用反射创建 Bean 实例的几种方式

《Spring中使用反射创建Bean实例的几种方式》文章介绍了在Spring框架中如何使用反射来创建Bean实例,包括使用Class.newInstance()、Constructor.newI... 目录1. 使用 Class.newInstance() (仅限无参构造函数):2. 使用 Construc

python中time模块的常用方法及应用详解

《python中time模块的常用方法及应用详解》在Python开发中,时间处理是绕不开的刚需场景,从性能计时到定时任务,从日志记录到数据同步,时间模块始终是开发者最得力的工具之一,本文将通过真实案例... 目录一、时间基石:time.time()典型场景:程序性能分析进阶技巧:结合上下文管理器实现自动计时

Java逻辑运算符之&&、|| 与&、 |的区别及应用

《Java逻辑运算符之&&、||与&、|的区别及应用》:本文主要介绍Java逻辑运算符之&&、||与&、|的区别及应用的相关资料,分别是&&、||与&、|,并探讨了它们在不同应用场景中... 目录前言一、基本概念与运算符介绍二、短路与与非短路与:&& 与 & 的区别1. &&:短路与(AND)2. &:非短

MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析

《MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析》本文将详细讲解MyBatis-Plus中的lambdaUpdate用法,并提供丰富的案例来帮助读者更好地理解和应... 目录深入探索MyBATis-Plus中Service接口的lambdaUpdate用法及示例案例背景