64 lines
1.5 KiB
Plaintext
64 lines
1.5 KiB
Plaintext
IDENTIFICATION DIVISION.
|
|
PROGRAM-ID. ESQL.
|
|
ENVIRONMENT DIVISION.
|
|
CONFIGURATION SECTION.
|
|
* INPUT-OUTPUT SECTION.
|
|
DATA DIVISION.
|
|
FILE SECTION.
|
|
|
|
WORKING-STORAGE SECTION.
|
|
EXEC SQL
|
|
INCLUDE SQLCA
|
|
END-EXEC
|
|
77 COUNTER PIC 99.
|
|
01 WHERE-ERROR PIC X(72).
|
|
01 gds__trans REDEFINES ISC_TRANS PIC S9(9) USAGE COMP.
|
|
|
|
EXEC SQL BEGIN DECLARE SECTION END-EXEC
|
|
01 TRANS PIC S9(9) USAGE COMP VALUE 0.
|
|
01 FIRSTNAME BASED ON FRIEND.FIRSTNAME.
|
|
01 LASTNAME BASED ON FRIEND.LASTNAME.
|
|
01 CITY BASED ON FRIEND.CITY.
|
|
01 STATE BASED ON FRIEND.STATE.
|
|
01 AGE BASED ON FRIEND.AGE.
|
|
EXEC SQL END DECLARE SECTION END-EXEC
|
|
|
|
PROCEDURE DIVISION.
|
|
MAIN.
|
|
DISPLAY " ".
|
|
DISPLAY " ".
|
|
DISPLAY " DEMO ESQL PROGRAM ".
|
|
EXEC SQL
|
|
CONNECT TO 'demo.gdb'
|
|
END-EXEC
|
|
DISPLAY "DATABASE OPEN RETURNS CODE: " SQLCODE.
|
|
EXEC SQL
|
|
SET TRANSACTION NAME TRANS
|
|
END-EXEC
|
|
PERFORM INSERT VARYING COUNTER FROM 1
|
|
BY 1 UNTIL COUNTER >20.
|
|
EXEC SQL
|
|
COMMIT TRANSACTION TRANS
|
|
END-EXEC
|
|
DISPLAY "COMMIT TRANSACTION RETURNS CODE: " SQLCODE.
|
|
EXEC SQL
|
|
DISCONNECT ALL
|
|
END-EXEC.
|
|
DISPLAY "DATABASE CLOSE RETURNS CODE: " SQLCODE.
|
|
STOP RUN.
|
|
INSERT.
|
|
|
|
STRING "MyFirstName", COUNTER INTO FIRSTNAME.
|
|
STRING "MyLastName", COUNTER INTO LASTNAME.
|
|
STRING "MyTrans", COUNTER INTO CITY.
|
|
MOVE COUNTER TO AGE.
|
|
EXEC SQL
|
|
INSERT TRANSACTION TRANS INTO FRIEND VALUES(
|
|
:FIRSTNAME,
|
|
:LASTNAME,
|
|
:CITY,
|
|
:STATE,
|
|
:AGE)
|
|
END-EXEC.
|
|
DISPLAY "INSERT INTO TABLE RETURNS CODE: " SQLCODE.
|