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

Rhoslyn狮子

Rhoslyn狮子

2016-02-19 10:00

最近很多朋友喜欢上设计,但是大家却不知道如何去做,别担心有图老师给你解答,史上最全最棒的详细解说让你一看就懂。
怎样才能将在表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
);
展开更多 50%)
分享

猜你喜欢

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

编程语言 网络编程
Oracle存储过程之数据库中获取数据实例

数据库分页存储过程代码

编程语言 网络编程
数据库分页存储过程代码

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Oracle数据库数据对象分析(中)

编程语言 网络编程
Oracle数据库数据对象分析(中)

Oracle 数据库中创建合理的数据库索引

编程语言 网络编程
Oracle 数据库中创建合理的数据库索引

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

调用Oracle数据库中的存储过程需要两步走

编程语言 网络编程
调用Oracle数据库中的存储过程需要两步走

Oracle数据库数据对象分析

电脑网络
Oracle数据库数据对象分析

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

SQL Server CROSS APPLY和OUTER APPLY的应用详解

SQL Server CROSS APPLY和OUTER APPLY的应用详解

win8如何在已安装多系统下更改默认开机系统

win8如何在已安装多系统下更改默认开机系统
下拉加载更多内容 ↓