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
-----
X
二、 创建存储过程:
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构