• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Oracle存储过程之数据库中获取数据实例
    怎样才能将在表A取得的数据插入另一个表B中?

      (1)对于表A和表B两个表结构完全相同的话〔字段个数,相应字段的类型等等〕,可以使用

      insert INTO B select * FROM A;

      insert INTO B(field1,field2,field3) select A.field1,A.field2,A.field3 from A;

      (2) 对于两个表如果字段数不一样,但是有几个字段的结构一样时〔类似于父子关系〕,必须使用 insert INTO B(field1,field2) select A.field1,A.field2 from A;

      1.用带参数的游标实现insert功能:

      create OR REPLACE PROCEDURE GET_DATA(

      -- 参数列表:

    n_task_id IN number, --任务编号
    v_task_name IN varchar2, --任务名称
    v_name IN varchar2 -- 名称
    )

      -----------------------------------------------

      -- PROCEDURE名 :GET_DATA --

      -- 処理内容 :从数据源表取得符合条件的的数据插入到目标数据表: --

      -- 引数 :n_tas_id 任务ID, --

      -- v_task_namek 任务名称, --

      -- v_bdw_name 对数据源表限制条件:本地网名称 --

      -----------------------------------------------

      IS

      --插入行数控制

      i_count number(5);

      --取数据游标:DATA_CUR(IN_NAME)

      --参数:本地网名称:IN_NAME

    CURSOR DATA_CUR(IN_NAME VARchar2) IS /**注意:参数的定义中不带精度**/
    select *
    FROM GET_DATA_SRC A
    where A.NAME = IN_NAME;
    BEGIN

      --计数器,控制插入行数

      i_count := 0;

      --循环插入数据

    FOR MYCUR IN DATA_CUR(v_name) LOOP
    insert INTO ABC(
    ROW_ID,
    TASK_ID,
    TASK_NAME,
    GET_DATA_DT,
    CUST_ID,
    ASSIGN_FLAG,
    DEAL_DATE
    )VALUES(
    SEQ_KD.NEXTVAL,
    N_TASK_ID,
    V_TASK_NAME,
    SYSDATE,
    MYCUR.CUST_ID,
    'N',
    NULL
    );
    您可能感兴趣的文章:
    • PL/SQL中编写Oracle数据库分页的存储过程
    • oracle数据库中查看系统存储过程的方法
    • Oracle中 关于数据库存储过程和存储函数的使用
    • 关于Oracle存储过程和调度器实现自动对数据库过期数据清除的问题
    上一篇:Oracle常用dump命令,记录一下备查。
    下一篇:Oracle存储过程入门学习基本语法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Oracle存储过程之数据库中获取数据实例 Oracle,存储,过程,之,数据库,