AS400基础培训_第1页
AS400基础培训_第2页
AS400基础培训_第3页
AS400基础培训_第4页
AS400基础培训_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、as/400 基础培训作者:陈腾飞第 1 页 共 14 页as/400 基础培训目录1as/400 体系结构介绍.21.1as/400 性能概述 .21.2对象和对象管理.21.3工作管理 .32as/400 的基本操作 .42.1菜单、入口、列表和信息.42.2常用命令 .53ile rpg/400编程入门 .63.1文件的创建和操作 .63.1.1物理文件.63.1.2逻辑文件.73.2ile rpg 程序编写 .73.2.1常用规范表 .73.2.2内部函数.93.2.3表达式 .93.2.4操作码 .103.3模板学习 .113.4编程练习 .124sql/400 介绍 .12as/4

2、00 基础培训作者:陈腾飞第 2 页 共 14 页1as/400 体系结构介绍1.1 as/400 性能概述集成性as/400 把数据库、通讯、安全性等功能集中在操作系统中,最大限度地实现了各功能之间的兼容性。开放性支持 sna、tcp/ip 协议, db2/400 可与大多数数据库系统实现互联。可移植对 spec1170 的支持可达到95%,相当于一般unix 操作系统。兼容性所有应用可上下兼容。可连接性哑终端( 5250) 、仿真终端( pc communication 、client access 、gui)可支付性可扩充性1.2 对象和对象管理基于对象as/400 中, mi 由指令和

3、对象组成。也就是说,as/400 是基于对象(object-based)的系统,而不是一个面向对象(object-oriented)的系统。在as/400 中,对象不具备集成性,也没有类和子类的概念。在 as/400 的定义中,系统上所有可存储和检索的东西,都叫做对象。对象由描述这个对象的描述和它的值组成。对象的描述包括:名称、类型、大小、建立日期、建立对象者提供的简单描述、以及存储对象的库的名称。对象的要素目录名、对象名和对象类型唯一确定一个对象。对象目录as/400 中的目录结构是单层的,因此对象的表达形式为“library/object ” 。特殊系统目录 qsys 可指向其他目录。目录

4、的两种类型:production 和 test。目录表*libl 、*curlib 、*syslibl 、*usrlibl 、 *ibm 、 *allusr 、*all edtlibl , addlible ,dsplibl 、 chgcurlib 、qsyslibl 、 qusrlibl 对象的类型*pgm 、*file 、*lib 、*jobd 、*usrprf 、*jobq 、*dtaara 、*cmd 、*msgq 等。对象的权限as/400 基础培训作者:陈腾飞第 3 页 共 14 页用户描述:包含user class、objectsowened and authorized 、 a

5、uthorization of objects、privileged instructions and special authorities等。用户类security officer ( *secofr)security administrator ( *secadm )system programmer( *pgmr )system operator(*sysopr)workstation user(*user )可操作对象自己拥有的对象他人授权访问的对象有公共权限的对象对象的权限*all (对象的操作、管理、生存、权限表管理、读、添加、删除和修改)*change (对象的操作、读、添加、

6、删除和修改)*use(对象的操作、读)*exclude( 无权访问对象) 特权指令和特殊权限*allobj *secadm *savsys *service *jobctl *splctl *iosyscfg *audit 程序引用权限组权限authorization list和 group profile。权限查找user profile、 group profile 、public 1.3 工作管理作业( job)打印作业( spooling )交互作业( interactive )后台作业( batch )自启动作业( autostart )通讯作业( communica tion )组

7、成作业的3 部分:作业号、用户名和作业名,number/user/name。子系统( subsystem)是一个预定义的操作环境,对应每个子系统有一个子系统描述。可设置最大并发作业数、as/400 基础培训作者:陈腾飞第 4 页 共 14 页内存池大小和个数、作业的来源、作业的运行属性等。qbase、qbatch 、qinter 、qctl 、qcmn 、qspl 内存池( storage pool)共享池( shared pool)和私有池( private pool)*machine ( qmchpool )*base (qbaspool )*spool *interact *shrpoo

8、l1-10 队列( queue)消息队列( message queue)作业队列( job queue)输出队列( output queue)数据队列( data queue)作业描述( job description )设置作业的属性,如job queue、job 在 job queue中的优先级、 output queue、printer device、libl 等。dspjobd 命令sbmjob 缺省为 *usrprf 2as/400 的基本操作2.1 菜单、入口、列表和信息菜单菜单的组成菜单标题、菜单标识符、菜单选项列表、命令提示行、功能键、消息行菜单分类main, system,

9、assist, user 菜单操作go 菜单名入口(输入界面)录入命令选项f4 - 输入项提示f1 - 输入项帮助说明f5 - 刷新f12 - 取消录入,并退出前一界面f3 - 退到用户主菜单enter - 执行命令f10 - 额外的命令f9 - 所有的命令as/400 基础培训作者:陈腾飞第 5 页 共 14 页f24 - 更多的功能键显示+ - 列表操作列表二维表格,显示一组实体标题- 对实体的描述操作选项- 对可选操作的描述输入操作域- 输入可选操作命令提示行功能键提示行消息提示行信息显示帮助信息pageup/pagedown - 上下翻页f12 - 退出至前一页2.2 常用命令命令的组

10、成动词 +宾语命令参数关键字格式:cpyf fromfile (filea )tofile (fileb )位置格式: cpyf filea fileb 参数提示格式(f4)动词change - chg display - dsp end - end hold - hld release - rls start - str work with - wrk 宾语command - cmd data area - dtaara job queue - jobq output queue - outq spooled file - splf system value - sysval user pr

11、ofile - usrprf 常用命令object: crtdupobj 、 movobj 、 savobj、rstobj、 wrkobj 、 wrkobjlck 、 wrkobjpdm file: cpyf、dltf 、dspfd 、dspffd 、dspdbr 、crtsavf、 crtsrcpf、 clrsa vf、as/400 基础培训作者:陈腾飞第 6 页 共 14 页upddta splf cpysplf、 dltsplf 、 dspsplf、 hldsplf 、 rlssplf 、 wrksplf 、 member 、clrpfm 、 rgzpfm 、 wrkmbrpdm lib

12、 crtlib 、dltlib 、 dsplib 、savlib 、rstlib 、wrklib 、wrklibpdm job chgjob、dlyjob 、 dspjob、dspjoblog 、 endjob 、 hldjob 、 rlsjob 、 sbmjob 、signoff 、wrkactjob 、 wrksbmjob 、wrksbsjob 、wrkusrjob system: dspsyssts、dspsysval、dsplog 、 wrksyssts 、wrksysv al message dspmsg、sndbrkmsg 、 sndmsg 、 wrkmsg msgf chgmsg

13、f 、 crtmsgf、 dltmsgf 、 wrkmsgf 、 addmsgd 、 chgmsgd 、 dspmsgd 、rmvmsgd 、 wrkmsgd 3ile rpg/400编程入门应用设计的实现工具pdm (programing development manager)seu (source entry utility) dfu (data file utility) sda (screen design aid) rlu (report layout utility) 3.1 文件的创建和操作3.1.1 物理文件存取实际数据,对应于表,可多成员。文件名:a-z, , $, # 开

14、头其他: a-z,$,#, _, 0-9 少于等于10 个字符数据类型a - character o - dbcs open t - time z - timestamp s - zone decimal as/400 基础培训作者:陈腾飞第 7 页 共 14 页p - packed decimal dds - 关键词文件级: ref,unique,fifo,fcfo,lifo 记录级: format,text 字段级: colhdg,alias, cmp ,range,v alues,reffld 关键字段级: descend,absv al,un-signed,signed 3.1.2 逻

15、辑文件用于排序,选择,连接,有非连接逻辑文件和连接逻辑文件。非连接逻辑文件关键词记录级:增加pfile 字段级:增加rename 、concat 关键字段级:同物理文件select/omit关键词:第17 列, s 为 select, o 为 omit ,对应的关键词有:all ,comp, value , range 3.2 ile rpg 程序编写如果第 7 列为* 则不管该行为什么规范表,都表示该行为注释行。f 表和 d 表的第 43 列为保留列。3.2.1 常用规范表文件描述规范表(f 表)定义在程序中使用的每一个文件。第 6 列为 f;第 7-16 列为文件名;第 17 列为外部描述

16、文件的类型i 输入文件o 输出文件u 更新文件c 组合文件第 18 列为文件规定空格输出文件f 全过程文件第 20 列为文件增加a对输入文件或更新文件增加记录,但c 表中必须有write 操作。第 22 列为文件格式e 外部描述文件。as/400 基础培训作者:陈腾飞第 8 页 共 14 页第 34 列为文件格式空格按相对记录数来处理文件k 按键字值来处理文件(仅对外部描述文件有效)。第 36-42 列为设备printer 打印文件disk 磁盘文件workstn 工作站文件(通过显示文件输入或输出)第 44-80 列为键字commit 允许用户在落实控制下处理文件infds (ds 名)定义

17、和命名一个数据结构来存放与文件有关的反馈信息oflind (*inxx ) 定义一个溢出指示器(仅对printer 有效)rename (外部格式:内部格式)外部文件的记录格式重命名sfile(记录格式:相对记录号)说明子文件的相对记录号(显示文件中用)usropn 程序初始化时不打开文件定义规范表(d 表)用来定义数据结构、数据结构子字段、独立字段和命名常量。rpg iv 支持的数据类型字符型、数据型、图表型、日期型、时间型、时间标记型、基本指针型、过程指针型。第 6 列为 d;第 7-21 列为名字;第 22 列为外部描述表示数据结构是外部描述的。第 24-25 列为外部描述表示数据结构是

18、外部描述的。空格定义一个数据结构子字段ds 定义一个数据结构c 定义一个常量(25 列必须为空)s 定义一个独立字段、数组或表第 26-32 列为 from 位置第 33-39 列为 to 位置或长度,常量或独立字段用like 键字时可为空第 40 列为内部数据类型第 41-42 列为十进制小数位第 44-80 列为键字const (常量)命名常量的值ctdata 表示为编译时间数组datfmt (格式 分隔符 )为日期字段规定格式和分隔符dim (数字常量)定义数组或表中元素的个数dtaara (数据区名) 把变量和外部数据区联系extfld (字段名)给在外部描述数据结构的子字段重命名ex

19、tname (文件名 :格式 ) 说明外部文件的名字inz (常量) 初始化like (变量名)引用参数变量的属性和长度。overlay (名字 :位置 )在数据结构子字段中覆盖子字段prefix (前缀串 :长度 )以前缀串替代外部描述数据结构的子字段名的前缀timfmt (格式 :分隔符 )规定时间类型变量的格式或分隔符as/400 基础培训作者:陈腾飞第 9 页 共 14 页计算规范表(c 表)第 6 列为 c;续行时第6 列为 c,7-35 为空, 36 之后续写。c 表语句分计算说明语句和计算扩展因子2 规范语句计算说明语句第 9-11 列(指示器)决定是否执行某个计算第 12-25

20、 列(因子1)用来执行操作的字段名或数据第 26-35 列(操作和扩展)说明操作类型操作扩展有 : 空格不支持扩展操作h 数据操作的四舍五入结果n 读更新磁盘文件记录但不加锁p 用空格来填充结果字段d 操作的描述或日期字段t 时间字段z 时间标记字段第 36-49 列(因子2) 字段名、记录格式或文件名或操作的实际数据等第 50-63 列(结果字段)字段名或记录格式名第 71-76 列(结果指示器)检测及过字段的值或支出文件末、错误或记录没找到的情况。计算扩展因子2 规范说明第 9-11 列(指示器)同上第 12-25 列(因子1) 必须为空格第 26-35 列(操作和扩展)说明在扩展因子2

21、使用表达式所执行的种类操作扩展有 : 空格不支持扩展操作h 数据操作的四舍五入结果第 36-80 列(扩展因子2) 自由格式语法,有操作数和操作符组成。3.2.2 内部函数内部函数的语法:函数名(自变量:自变量 )%size(变量)返回字段占用的字节数。%subst( 串:起始位置 :长度 ) 返回自变量串的一部分。%trim (字符串)返回去掉引导及结尾空格的指定字符串。%triml (字符串)返回去掉前置空格的指定字符串。%trimr (字符串)返回去掉结尾空格的指定字符串。3.2.3 表达式表达式由操作数和运算符组成,可作为计算规范表中的扩展因子2。表达式可以是一元关系的表达式运算符:+

22、 、 - 、not ;也可以是二元关系的表达as/400 基础培训作者:陈腾飞第 10 页 共 14 页式运算符: + (数据加或字符连接)- (减法 )、* (乘法)、* (取幂)、/ (除法)、= (等于)、= (大于等于 )、 (大于 )、= (小于等于 )、 (小于 )、 (不等于)、and (逻辑与)、or(逻辑或) ;也可以是内部函数。运算符的优先级从高到低为1、 ()2、内部函数3、一元关系的+,-, not 4、* 5、* ,/ 6、二元关系的+,- 7、=, = , , = , , 8、and 9、or 任何数据字段、命名常量或文字都可以作为操作数。3.2.4 操作码add

23、(加)begsr(开始子过程)call (调用一个程序)callb (调用连接过程)chain (从文件中检索)check(效验字符)clear (清除)close(关闭文件)commit (落实)delete (删除记录)div (除法)do(do)dou(do until )dow(do while )else(否则)endyy (结束一个结构组)endsr(结束子程序)eval (计算表达式)exfmt( 写/然后读格式 ) exsr(激活子过程)if(if)in (检索一个数据区)iter(重复)kfld (定义键字部分)klist (定义组合键字)leave(跳出一个do 组)loo

24、kup (查找表或数组元素)as/400 基础培训作者:陈腾飞第 11 页 共 14 页move (传送)movea (传送数组)movel (左传送)mult (乘法)mvr (传送余数)open(打开文件)other(其他)out(写数据区)pram (参数)plist (参数列表)read (读一个记录)readc(读下一个修改过的记录)reade (读等于键字的记录)readp(读前面的记录)readpe(读前面等于键字的记录)reset(重新设置)return (返回到调用者)rolbk (取消)scan(扫描子串)select (开始一个选择组)setgt(设置大于)setll (

25、设置低界)setoff(设指示器off)seton(设指示器on)sqrt(求平方根)sub(减)time (时间)unlock (解锁数据区或释放一个记录)update(修改存在的记录)when (当为真时选择)write (生成新记录)z-add (零加)z-sub(零减)3.3 模板学习显示文件模版打印文件模版rpgle 程序模版clle 程序模版as/400 基础培训作者:陈腾飞第 12 页 共 14 页3.4 编程练习按模版编写一组简单的程序。4sql/400 介绍本节介绍基本sql语句和检索、修改、删除以及把数据插入表和视图中的子句。sql 语句中常用的是select 、updat

26、e 、delete 和 insert四个语句。insert 语句insert into table-name (column1, column2, . ) values (value-for-column1, value-for-column2, . ) into子句规定列的名字,values 子句给在into子句里规定的列指定值。在 insert语句列表里命名的列,都必须在 values 子句里提供一个值。如果表中各列都有在 values 子句里提供的值, 那么列名可以省略。 如果某一列有一个缺省值,则键字 default可用做 values 子句中的值。update 语句 update 表

27、名 set 列-1 = 值-1, 列-2 = 值-2, . where 检索条件 . 为了规定需要修改的行,使用where 子句:要修改一行,使用仅选择一行的where 子句。要修改多行,使用选择需要修改那些行的where 子句。可以省略where 子句,如果这样,sql将修改表或视图中提供值的每一行。delete 语句delete from 表名where 检索条件where 子句告诉sql要从表中删除哪些行。sql删除所有符合基本表查询条件的行。可以省略 where 子句,但最好还是包括它,因为没有where 子句的 delete语句将从表或视图中删除所有行。select 语句select

28、 子句用 select子句 ( 选择语句的第一部分) ,设定要检索的每列名称,例如:select field1,field2 from file1 可以指定检索一列, 或者至多8000 列。 检索的列值按select子句指定的顺序进行。如果想检索所有的列( 按出现在行中的相同顺序) ,那么用星号(*) 不必写列名:select * from file1 where 子句as/400 基础培训作者:陈腾飞第 13 页 共 14 页where 子句设定一个检索条件,用来识别需要检索、修改、或删除的行,用sql语句处理的行数由满足where 子句查询条件的行数决定。检索条件由一个或多个谓词组成,一个

29、谓词指定一个检测,sql对表的规定行进行操作。group by 子句group by 子句允许找到多行的一组特性,而不是一行的特性。当规定group by子句时, sql把选择的行分组,使每组的行在一列或多列有相匹配的值。接下来,sql处理每组产生的单行结果。可以在 group by 子句中规定一列或多列给行分组。在 select语句中规定的项是行的每组属性,而不是表或视图各行的属性。having子句对用 group by 子句选择的分组,可以使用having子句规定检索条件。having子句表明只要满足子句条件的那些组。由having子句规定的检索条件测试每组的属性,而不是组里每行的属性。h

30、aving子句在 group by子句之后,可包括由where 子句规定的同种检索条件。另外,可以用having子句规定列函数。order by子句用 order by 子句可以指定按某个顺序进行检索来选择行,按列值的升序或降序进行分类排序。 order by子句的使用与group by 子句类似:当按分类顺序检索行时,规定列名或sql使用的一些列。从多个表中连接数据内部连接用内部连接, 一个表中一行的列值与另一表(或同一表) 中另一行的列值组合形成一个数据行。 sql检查连接规定的每个表,来检索满足查找条件的所有行。有两种方法指定一个内部连接:用join 句法和用where 子句。用 joi

31、n 句法进行内部连接用内部连接句法,想要连接的两个表都列在from 子句中,加上连接所需的条件,连接条件在on键字后指定,用来决定两个表怎样互相比较并产生连接结果。条件可以是比较操作符,它不需要相等的操作,可以在用and键字分开的on子句中指定多个连接条件,对实际连接没有影响的其它条件都在where 子句中规定。select fld1,fld22,fld2 from file1 join file11 on fld1=fld11 where fld1 s用 where 子句的内部连接用 where 子句实现同样的连接,是用连接条件和在where 子句中附加的选择条件写出的,被连接的表在from 子句中列出,之间用逗号分开。select fld1,fld22,fld2 from file1 , file11 where fld1=fld11 and fld1 s尽管用 join 句法和 where 子句进行的内部连接返回的结果是相同的,但这两种方法的性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论