oracle数据抽取步骤

oracle数据抽取步骤

Database links:

1、      在本地计算机上,新建一个连接远程数据库的连接,并记住这个连接的服务名(例如:jzfx_remote);

2、        返回远程数据库的GLOBAL_NAME:

执行:SELECT * FROM GLOBAL_NAME;

记住此值;

3、        查看本地Global_name参数是true还是False

执行:SQL> show parameter global_name;

修改本地Global_name的参数:

alter  system  set  global_names = false;--慎重

4、        创建Database link:

create database link [remote_global_name]connect to remote_username  identified  by  remote_password  using  'jzfx_remote';

参数介绍:

remote_global_name:远程数据库global_name;

remote_username:连接远程数据库的帐号;

remote_password:连接远程数据库的密码;

5、        如果不能创建,需要修改本地的global_name为false:

alter system  set  global_names = false;

6、        测试连接是否成功:

select * from dual@[remote_global_name];

如果返回结果如下则表示连接成功了。

DUMMY

-----

二、  创建存储过程:

7、   CREATEORREPLACEPROCEDUREUSER_INFO_TEMP_TEST

IS

BEGIN

--插入数据(此SQL语句为示例)

        INSERTINTOUSER_INFO_TEMP

        SELECT *FROMUSER_INFO@ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM.TEMP

        WhereUSER_INFO.USERID@ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM.TEMPNOTIN (SELECTUSERIDFROMUSER_INFO_TEMP);

END USER_INFO_TEMP_TEST;

三、  创建job:

8、      使用sys,给本地用户赋予job的权限:

grantexecuteondbms_jobto[本地用户的帐号:xjgzmk];

9、    SQL > variablejobnonumber;

SQL > begin

dbms_job.submit(job => :jobno,

what =>'DATA_T_INFO_CRMNLCSSLV_PRO;',

next_date =>sysdate,

interval =>'sysdate+1/1440*10'

);

commit;

end;

/

 

此写法(sysdate+1/1440)代表,每分钟执行一次job

10、  运行job:

1: 命令方式:

SQL > begin

          dbms_job.run(:jobno)

          end;

          /

2: 快捷方式:

   在需要运行的job上,点击右键,再点击“run”即可;

11、  job各时间段介绍:

1: 每分钟执行

Interval=> TRUNC(sysdate,'mi') + 1/ (24*60)

Interval=> sysdate+1/1440

2: 每天定时执行

例如:每天的凌晨1点执行

Interval=> TRUNC(sysdate) + 1 +1/ (24)

3: 每周定时执行

例如:每周一凌晨1点执行

Interval=> TRUNC(next_day(sysdate,'星期一'))+1/24

4: 每月定时执行

例如:每月1日凌晨1点执行

Interval=>TRUNC(LAST_DAY(SYSDATE))+1+1/24

5: 每季度定时执行

例如每季度的第一天凌晨1点执行

Interval=> TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24

6: 每半年定时执行

例如:每年7月1日和1月1日凌晨1点

Interval=> ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24

7: 每年定时执行

例如:每年1月1日凌晨1点执行

Interval=>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值