- 1、本文档共184页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8.9.2预编译、编译、链接、执行COBOL源程序的JCL-四川大学
主机DB2数据库应用与编程 第八章 嵌入式COBOL程序开发 8.1 COBOL嵌入式应用程序开发基本概念 8.1.1 COBOL嵌入式应用程序开发总体结构图 COBOL嵌入式应用程序开发总体结构图如下: Precompile Compile/Link-edit Bind 在上图中,COBOL嵌入式源程序由COBOL源程序中嵌入DB2 SQL语句组成。用JCL来处理COBOL嵌入式源程序。 第一步预编译后DB2 SQL语句从COBOL源程序中分离,分别生成剔除SQL语句的修改的源程序和包含SQL语句的DBRM文件。 修改的源程序可以看作普通的COBOL源程序,经过通常的编译后生成目标文件,联结后生成可执行文件。 DBRM文件经过两次绑定先后生成包和计划。 运行COBOL嵌入式源程序可以有两种基本方式: 在JCL里运行 在CICS里运行 这些将在下文实例部分详细介绍。 8.1.2 分隔符 嵌入式SQL应用程序的特点如下: 使用分隔符来标识应用程序中的SQL语句。 使用宿主变量来在WHERE子句中提供值,或从SELECT语句中得到值。 使用SQLCA来确认SQL语句是否成功。 预编译器使用分隔符来识别要编译的SQL语句。嵌入式程序开发中应当标识每一句嵌入式SQL语句的开始和结束。 例如:以本文的样例表EMP为例,使用EXEC SQL和END-EXEC来分隔在COBOL程序中的SQL语句如下: EXEC SQL UPDATE EMP SET WORKDEPT = C00 WHERE WORKDEPT = C01 END-EXEC. 8.1.3 宿主变量 宿主变量用来在语句执行前设置值。SQL语句中的宿主语言标记是在变量前加冒号,且宿主变量应当与数据表列的数据类型匹配。 宿主变量的示例如下图: 更完整的嵌入式COBOL程序样例代码 比如单行插入的SQL语句样例如下: INSERT INTO EMP( EMPNO, LASTNAME ) VALUES ( 000100, JONES ) 在COBOL程序中的相关语句及SQL语句如下: MOVE JONES TO NAME. MOVE 000100 TO EMPNO. EXEC SQL INSERT INTO EMP( EMPNO, LASTNAME ) VALUES ( :EMPNO, :NAME ) END-EXEC. 嵌入式程序开发数据传递机制 一般情况是用户在CICS MAP或WEB界面里输入用户的查询或其他操作的条件,如000100和JONES,然后程序通过一个机制得到这些值(在CICS课程里会详细讲述),程序再做MOVE语句将得到的值传给对应的宿主变量,然后通过EXEC SQL END-EXEC语句,从宿主变量里取值拼接成一个完成的SQL语句,完成数据库操作。如果数据库不需要返回要显示的数据(如INSERT,UPDATE,DELETE语句) ,那么操作结束,如果数据库需要返回数据显示(如SELECT语句),那么返回的数据还会存入宿主变量,通过MOVE语句将宿主变量的值传给要输出显示的变量,然后程序通过一个机制(在CICS课程里会详细讲述)送出这些值到CICS MAP或WEB显示给用户。 宿主变量声明 在程序发出SQL语句查询、插入、更新和删除数据之前,应当首先声明程序中所用的表和视图。只要在程序中加入SQL DECLARE语句即可,每个数据表列对应一个宿主变量,同时需要使用额外的变量来指示列为空的情况。 COBOL程序中宿主变量声明的例子如下: 建表的语句如下: CREATE TABLE EMP ( EMPNO CHAR(6) NOT NULL, FIRSTNME VARCHAR(12) NOT NULL, MIDINIT CHAR(1) NOT NULL, LASTNAME VARCHAR(15) NOT NULL, WORKDEPT CHAR(3), PHONENO CHAR(4), HIREDATE DATE, JOB CHAR(8), EDLEVEL SMALLINT, SEX
您可能关注的文档
- 25汽车空调.ppt.ppt
- 20朱许婷红白肌比例与运动员挑选的相关关系-北京理工大学.ppt
- 2013年针扎统计分析.ppt
- 2Q'07~3Q'08台厂NB季出货量与成长率变化-Digitimes.ppt
- 2传感器技术基础.ppt.ppt
- 2、工业联系.ppt
- 3-4属性视窗.ppt
- 3-培侨小学.ppt
- 3.我国在中小学普及信息技术教育的主要目标-荣县教师进修学校.ppt
- 3.3.1随机误差的正态分布1.频数分布测定某样品100次.ppt
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
最近下载
- ansys结构声振耦合解决方案.pptx VIP
- ANSYS系统仿真与数字孪生解决方案.pptx VIP
- 第17课 电脑动画 教案 人教版 美术 五年级上册.docx VIP
- 湖北省黄冈市2025年八年级上学期1月期末英语试题(含答案).docx VIP
- 娱乐先锋II_高级KTV系统.pdf VIP
- 汽车软件简介演示.pptx VIP
- 水处理大法聚二甲基二烯丙基氯化铵在给水除藻中的作用应用的探讨.doc VIP
- 2026龙飞平面图形推理基础理论➕百大图形3.0版本.pdf VIP
- 连云港“高质发展、后发先至”-全面建设连云港小康社会继续教育题库及.pdf VIP
- 水污染控制工程第11章.ppt VIP
文档评论(0)