惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
N
News and Events Feed by Topic
D
DataBreaches.Net
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Engineering at Meta
Engineering at Meta
T
Tailwind CSS Blog
博客园_首页
Microsoft Azure Blog
Microsoft Azure Blog
Y
Y Combinator Blog
博客园 - Franky
Hugging Face - Blog
Hugging Face - Blog
月光博客
月光博客
A
About on SuperTechFans
I
InfoQ
S
Securelist
Last Week in AI
Last Week in AI
S
Schneier on Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Hacker News: Ask HN
Hacker News: Ask HN
Schneier on Security
Schneier on Security
Know Your Adversary
Know Your Adversary
腾讯CDC
大猫的无限游戏
大猫的无限游戏
S
Security @ Cisco Blogs
博客园 - 三生石上(FineUI控件)
Simon Willison's Weblog
Simon Willison's Weblog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Tor Project blog
美团技术团队
aimingoo的专栏
aimingoo的专栏
G
Google Developers Blog
罗磊的独立博客
Vercel News
Vercel News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The Cloudflare Blog
S
Secure Thoughts
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Latest news
Latest news
Recent Announcements
Recent Announcements
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
L
LINUX DO - 热门话题
Security Latest
Security Latest
TaoSecurity Blog
TaoSecurity Blog
Cyberwarzone
Cyberwarzone
有赞技术团队
有赞技术团队

博客园 - mshwu

桥接模式(Bridge Pattern) 单例模式 工厂方法模式 命名空间的规划 Download Manager Intent(二) Intent (一) Fragment (一) 2-1 Managing the Activity Lifecycle java1.5新特性(转) 1-4 Starting Another Activity 1-3 Building a Simple User Interface(创建简单的用户界面) 1-2 Android系统架构基本模式解析 1-1 Building Your First Android Application FTP Send File: Source Code Review(转) 动态操作文件 通用日志管理工具 触发器程序 通过CLP实现library之间的自动复制 (转)
OVRDBF的用法
mshwu · 2008-07-21 · via 博客园 - mshwu

一般来说你在程序中F CARD中定义的FILE 我们假定是FILE A 那么在程序中所有的语句处理都是以FILE A的定义的字段处理,当运行程序是如果没有做其他操作,系统将默认打开FILE A的*FIRST MEM 作为读写的目标.
如果此时你要读写的文件是个多MEM的PF希望用另外一个MEM作为读写目标,或者是另一个与FILE A 格式相同(注意)名称不同的文件,或者是另外一个LIB下的FILE A 同名的文件(如果不能修改LIBL的话) 这个时候就要用OVRDBF了.
假定你需要使用的是FILE B MEM 为MBR
OVRDBF FILE(FILEA) TOFILE(LIB/FILE B) MEM(MBR)
这样的结果是所有对FILE A MEM(*FIRST)的读写操作实际上将是对 FILE B 的MEM MBR操作
和OPNQRYF结合使用的.
一般的用法是 有FILE A 和FILE B 有需求在处理中将这两个文件结合使用.
此时先建个TEMP FILE C (PF)包含需要使用的 FILE A 和 FILE B 的字段,此PF是个空文件.
在程序中使用FILE C
在调用程序前
1.在QTEMP 复制一个FILE C
2OVRDBF QTEMP / FILE C  TOFILE( FILE C)
OPNQRYF 将FILE A 和FILE B 按照FILE C的格式生成临时文件
调用程序处理
在QTEMP 建临时文件是为了避免多进程调用冲突.

opnqryf命令本身Open options . . . . . . . . . . OPTION 有多种选择:*ALL, *INP, *OUT, *UPD, *DLT
也就是生成的文件可供读/写/更新/删除操作
从数据的完整性来说,ovrdbf是IBM把数据采集和程序分割开来的连接点:

            数据 ------>  |---------------|
                                     | ovrdbf        |
                程序 -------> |---------------|   

客户a在调用程序之前,采集了用query采集了数据集A,用默认member,定义ovrbdf,调用程序B;

客户b在调用程序之前,采集了用query采集了数据集B,用b member,定义ovrdbf,调用程序B;

如果,用相同member,定义ovrbdf,就会发上lock,和数据错误。