NetCobol与Oracle数据库连接(Pro*Cobol方式)

1.NetCobol开发环境的设置

  A.首先创建工程时,要使用Oracle带的Pro*Cobol编译器,位置(\BIN\procob.exe)

  B.选择Link  Option 的Command Parameter(/NODEFAULTLIB:LIBCD \precomp\LIB\oraSQL10.LIB)

  C.添加已经做好的COBOL程序(XXX.pco),因为是Pro*COBOL类型的程序,要注意添加的方式.

2.COBOL代码

000010******************************************************************
000020*
000030******************************************************************
000040 IDENTIFICATION                      DIVISION.
000050 PROGRAM-ID.                           TEST1.
000060*
000070 ENVIRONMENT                         DIVISION.
000080 DATA                                DIVISION.
000090 WORKING-STORAGE                     SECTION.
000100*          |
000110      EXEC SQL  BEGIN DECLARE SECTION END-EXEC.
000120  01  USERNAME     PIC    X(02) VALUE "HR".
000130  01  PASSWD          PIC    X(04) VALUE "HR01".
000140  01  DBNAME           PIC    X(07) VALUE "KENSHUE".
000150  01  WK-IN-REC.
000160      05  WK-IN-JOBID            PIC     X(07).
000170      05  WK-IN-JOBTITLE     PIC     X(09).
000180  01  WK-OUT-REC.
000190      05  WK-OUT-JOBID              PIC     X(10).
000200      05  WK-OUT-JOBTITLE       PIC     X(35).
000210      05  WK-OUT-MINSALARY    PIC     9(06).
000220      05  WK-OUT-MAXSALARY    PIC     9(06).
000230      EXEC SQL  END DECLARE SECTION END-EXEC.
000240      EXEC SQL INCLUDE SQLCA END-EXEC.
000250*
000260 PROCEDURE DIVISION.
000270*          |
000280      EXEC SQL  WHENEVER SQLERROR GOTO SQL-ERR END-EXEC.
000290      EXEC SQL
000300        CONNECT :USERNAME IDENTIFIED BY :PASSWD USING :DBNAME
000310      END-EXEC.
000320*          |
000330      MOVE     SPACE             TO    WK-IN-REC.
000340      MOVE     "AD_PRES"     TO    WK-IN-JOBID.
000350      MOVE     "President"      TO    WK-IN-JOBTITLE.
000360*          |
000370      EXEC SQL
000380          SELECT
000390              MIN_SALARY        INTO :WK-OUT-MINSALARY
000400          FROM JOBS
000410          WHERE
000420                  JOB_ID = :WK-IN-JOBID
000430              AND JOB_TITLE = :WK-IN-JOBTITLE
000440      END-EXEC.
000450*          |
000460      DISPLAY  WK-OUT-MINSALARY.
000470*          |
000480      STOP        RUN.
000490*
000500 SQL-ERR.
000510*          |
000520      STOP        RUN.

请使用浏览器的分享功能分享到微信等