`

存储过程-查询数据插入游标后更新表字段

 
阅读更多
create or replace procedure p_update_03
as
 type balance is ref cursor;
 balanceDaylly balance;
 dealer_code VARCHAR2(70);--承运商名称
 delivery_carrier VARCHAR2(10);--司机
 carrier_code VARCHAR2(32);--承运商编码
 DEALER_NUMBER VARCHAR2(20);--车牌号
 serial_no VARCHAR2(32);
 begin
   open balanceDaylly for 
    select carrier.code,carrier.name,s.license,s.driver_name,pd.serial_no from jac_scl.shipment_detail sd 
    left join jac_scl.shipment s on s.id = sd.shipment_id
    left join jac_scl.pod_detail pd on pd.id = sd.pod_detail_id
    left join jac_scl.Wms_Organization carrier on carrier.id = s.carrier_id
    where pd.serial_no in ('E3004185','E8011988','E8011992');
   loop
     fetch balanceDaylly into carrier_code,dealer_code,DEALER_NUMBER,delivery_carrier,serial_no;
     exit when balanceDaylly%notfound;
     dbms_output.put_line(carrier_code||','||dealer_code||','||DEALER_NUMBER||','||delivery_carrier||','||serial_no);
     update pod_detail pp set pp.description = delivery_carrier  
            where pp.serial_no = serial_no;
     end loop; 
 end;
  
  --执行
   begin  
      p_update_03;  
   end; 
  --输出
H,安徽省**汽车贸易有限公司,,吴××,E8011992
B,合肥**货运有限公司,,张×,E3004185
B,合肥**货运有限公司,,张×,E8011992
B,合肥**货运有限公司,,张×,E8011988
  --将pod_detail的字段description赋值  

 

分享到:
评论

相关推荐

    存储过程使用游标实现循环

    - `DECLARE @DW int`: 用于存储每条记录的数据表字段值。 2. **创建游标**: - `DECLARE favCounts CURSOR LOCAL SCROLL FOR SELECT RID, DB FROM yzdb..da_jbxx`:这里创建了一个名为`favCounts`的游标,用来...

    查询表字段

    在这个场景中,我们通常会使用SQL(Structured Query Language)来获取、更新、插入或删除数据库中的数据。这里我们将详细探讨如何查询表的字段以及相关的工具和技术。 首先,让我们理解什么是表字段。在关系型...

    达梦数据库_SQL语言手册

    因此在嵌入方式下,除了数据查询语句一次查询一条记录外,还有几种与游标 有关的语句: 游标的定义、打廾、关闭、拨动语句 游标定位方式的数据修改与删除语句。 为了有效维护数据库的完整性和一致性,支持 的并发...

    精髓Oralcle讲课笔记

    ------------------------/组函数(共5个):将多个条件组合到一起最后只产生一个数据------min() max() avg() sum() count()----------------------------/ 51、select count(*) from emp; --求出表中一共有多少条...

    oracle 声明游标(不具备字段)规则应用

    总之,声明包含非原表字段的游标是数据库编程中一种常见的技巧,用于整合多表数据。理解如何声明、使用和管理游标是Oracle PL/SQL开发的关键技能之一。通过学习上述内容,你应该能更好地理解和应用这一技术。

    MySQL DBA高频面试题

    - 删除了最后两条数据后,重启MySQL,插入一条数据后id值会接着上次的最大值。 6. 各类连接区别: - 内连接(INNER JOIN)返回两个表中匹配的行。 - 左连接(LEFT JOIN)返回左表所有行,即使右表没有匹配。 - ...

    python操作mysql教程与实例代码-PDF

    7. 获取表字段名:在执行查询后,可以通过游标对象的description属性来获取表中的字段名列表。 8. 插入数据:执行insert语句可以向数据库表中插入新的数据记录。在实例中创建了名为Writers的表,并插入了5条作家的...

    Oracle数据操作和控制语言详解

    2. DML(Data Manipulation Language):数据操纵语言用于插入、更新、删除和查询数据。 - `INSERT`:向表中插入新记录。 - `UPDATE`:修改表中已有的记录。 - `DELETE`:删除表中的记录。 - `SELECT`:从...

    Visual FoxPro数据库课件:第5章_SQL语言与视图设计1.ppt

    - **数据操纵语言(DML)**:涉及插入(Insert)、删除(Delete)和更新(Update)表中的数据记录。 - **数据查询语言(DQL)**:使用Select语句从一个或多个表中查询、聚合数据。 - **数据控制语言(DCL)**:...

    「Oracle存储过程及块编程基础经典案例」.docx

    在编写PL/SQL代码时,必须遵循严格的语法规范,确保变量类型与表字段类型匹配,且正确使用标点符号。例如,案例3中的变量`v_ename`应与`emp`表的`ename`字段保持一致,否则会引发错误。 总之,Oracle的存储过程和块...

    2012DBA数据库

    - **存储过程实现分页**: 在Oracle中,通常将分页逻辑封装在存储过程中,并使用动态游标变量来返回数据集。 #### 六、联接操作 6. **联接操作** - **左联接**(`LEFT JOIN`): 返回左表的所有记录以及右表匹配的...

    Python操作Mysql实例教程手册

    本文档旨在通过一系列示例介绍如何使用Python对MySQL数据库进行基本操作,包括执行SQL语句、获取结果集、遍历结果集、获取特定字段值、获取表字段名称、将图片插入数据库以及执行事务等高级功能。这些代码实例不仅...

    PLSQL学习笔记

    SQL主要负责数据的查询、更新、插入和删除等操作,属于数据查询语言(DQL),而PL/SQL则是一种过程化语言,它不仅包含SQL的功能,还支持流程控制、循环、条件判断、异常处理等程序设计元素。 1.2 PL/SQL可用的SQL...

    python 获取sqlite3数据库的表名和表字段名的实例

    本篇文章将深入探讨如何使用Python的sqlite3模块来获取SQLite数据库中的表名和表字段名,这对于数据库操作和数据处理至关重要。 首先,我们需要连接到SQLite数据库。通过`sqlite3.connect()`函数可以建立与指定...

    2021-2022计算机二级等级考试试题及答案No.1931.docx

    **知识点:** 在存储过程中,游标允许程序逐行访问查询结果。 **解析:** 使用游标的常规步骤是首先声明游标,然后打开、读取并最终关闭游标。 - **A. 打开-->读取-->关闭**: 不完整。 - **B. 声明-->读取-->关闭...

    mysql数据库的基本操作语法

    添加表字段** - **添加单列**: ```sql ALTER TABLE user ADD tel VARCHAR(11) DEFAULT '02012345678'; ``` - **添加多列**: ```sql ALTER TABLE user ADD ( photo BLOB, birthday DATE ); ``` - **...

    Oracle中用一张表的字段更新另一张表的字段

    在Oracle数据库中,当需要将一个表的字段值更新到另一个表时,通常可以使用`MERGE INTO`语句来实现。`MERGE INTO`是一个非常强大的...对于更复杂的情况,可能需要结合其他数据库操作,如临时表、游标或存储过程来实现。

Global site tag (gtag.js) - Google Analytics