免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: wyd1003
打印 上一主题 下一主题

文件和成员概念问题 [复制链接]

论坛徽章:
0
1 [报告]
发表于 2010-01-14 18:08 |显示全部楼层
原帖由 wyd1003 于 2010-1-14 16:20 发表
什么是文件 , 什么是成员 ,我迷糊了。  忘大侠指点一二。 谢谢


我不姓 “忘”
也不是大侠
所以谈不上指点
随便说说,有错请指正

OS/400 文件(FILE)分很多种,常用的数据文件有PF和LF

OS/400的PF与DOS/WINDOWS下的xBase/FoxPro的.DBF文件结构有得一比。它是定长字段的记录格式。如果你定义一个10字节长的字符字段,字段值若填1个字符,则后面以9个EBCDIC编码空格填充。如果你删除一条记录,系统只是做了一个删除标记,就象.DBF一样做个删除标记,不过IBM可不提供FoxBase那样的RECALL命令来恢复删除的记录。

成员(member)是OS/400实现的一个特殊的东西,其它数据库好象没有,可以理解成一个“集合”。可以理解成member是Table中的一部分记录。
对于源程序文件(SRCPF)我们可以把其所在的“库”理解成UNIX/DOS/WINDOWS下的第1级子目录,file理解成UNIX/DOS/WINDOWS下的第2级子目录,file中的member理解成UNIX/DOS/WINDOWS下的源程序文件。
对于数据文件即物理文件PF,你可以把2007年的数据命名为一个MEMBER,例如叫DATA2007,再把2008年的数据命名为一个MEMBER,例如叫DATA2008。如果20年的数据都在一个文件中,每年一个member的做法是否可以提高存取的效率呢?我想是的。

评分

参与人数 1可用积分 +10 信誉积分 +2 收起 理由
居士 + 10 + 2 我很赞同

查看全部评分

论坛徽章:
0
2 [报告]
发表于 2010-07-04 15:41 |显示全部楼层
好解法,明了!不过好像说的是PF文件,LF以及DSPF有没有文件---成员的对比啊?
first_come 发表于 2010-07-02 10:32



LF 相当于Oracle的View,又相当于VFP的Index
LF 也可以有多个成员
DSPF 好像只有1个成员

论坛徽章:
0
3 [报告]
发表于 2010-07-05 21:15 |显示全部楼层
AS/400的文件可以想象成一个Excel文件,每个Excel文件可以有多个Sheet,这个Sheet就相当于Member。所不同的是,一个Excel文件里的每个Sheet结构可以不同,而同一个文件中的Member的结构是相同的。这点很重要!

对,太像了。

有一类特殊的文件,就是源物理文件(SRCPF),其中的Member可以通过编译生成为文件。就如同国际象棋中的兵可以升格为后。

源物理文件(SRCPF)是一种特殊的PF,有3个字段:行号(6位),内容,修改日期(6位)

Member只有在AS/400自己的编成环境中调用,如果用CS结构的前端第三方可视开发环境操作AS/400文件(比如用C++或java),则只能操作单Member的PF。SQL/400中似乎也无法指定Member,这个我记不太清楚了。

可以的,例如先 OVRDBF 然后再进入 STRSQL

AS/400的存储结构可以大致表述为 Library - File - Member。需注意的是Library不可嵌套。

QSYS 这个特殊 LIB 是其它所有 LIB 的容器,用 WRKLNK 或者 FTP 到 / 根目录就可以看到  QSYS.LIB 和 IFS 的 etc, dev 等类似UNIX的目录。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP