Code For Assessment
Code For Assessment
----------------------------GDG
BASE----------------------------------------------------------------
IDENTIFICATION DIVISION.
PROGRAM-ID. SELPGM.
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
EXEC SQL
INCLUDE EMPTB
END-EXEC.
EXEC SQL
DECLARE CUR1 CURSOR
FOR
SELECT EMPLOYEE_NO,EMPLOYEE_NAME,SALARY
FROM EMPLOYEES_TB WHERE DEPARTMENT_ID=20
END-EXEC.
77 IND-SAL PIC S9(4) COMP.
PROCEDURE DIVISION.
MAIN-PARA.
PERFORM OPEN-PARA.
PERFORM FETCH-PARA UNTIL SQLCODE = 100.
PERFORM CLOSE-PARA.
STOP RUN.
OPEN-PARA.
EXEC SQL
OPEN CUR1
END-EXEC.
IF SQLCODE = 0
DISPLAY 'SUCCESS'
ELSE
DISPLAY 'FAILURE'
END-IF.
FETCH-PARA.
EXEC SQL
FETCH CUR1
INTO
:HV-EMPLOYEE-NO,
:HV-EMPLOYEE-NAME,
:HV-SALARY : IND-SAL
END-EXEC.
IF SQLCODE = 100
DISPLAY 'NO MORE RECORDS'
PERFORM CLOSE-PARA
STOP RUN
ELSE
DISPLAY HV-EMPLOYEE-NO , ' ' , HV-EMPLOYEE-NAME , ' ' ,
HV-SALARY
WPR048.DEC20.DB2PGM(DELCUR) - 01.01 Columns 00001 000
EXEC SQL
DELETE FROM EMPLOYEES_TB WHERE CURRENT OF CUR1
END-EXEC
IF SQLCODE = 0
DISPLAY 'DELETED DATA'
END-IF.
CLOSE-PARA.
EXEC SQL
CLOSE CUR1
END-EXEC.
========================== DEL PGM ================================================
IDENTIFICATION DIVISION.
PROGRAM-ID. SELPGM.
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
01 HV-EMP-REC.
02 HV-ENO PIC S9(3) COMP.
02 HV-ENAME PIC X(6).
02 HV-PNUMBER PIC X(10).
02 HV-AGE PIC S9(2) COMP.
02 HV-HIREDATE PIC X(10).
02 HV-JPROFILE PIC X(10).
02 HV-DEPTID PIC S9(4) COMP.
02 HV-SALARY PIC S9(5)V9(2) COMP-3.
02 HV-COMMISSION PIC S9(4) COMP.
PROCEDURE DIVISION.
EXEC SQL
DELETE FROM EMPLOYEES_TB WHERE EMPLOYEE_NO=104
END-EXEC.
IF SQLCODE = 0
DISPLAY 'DELETE SUCCESS'
ELSE
DISPLAY 'FAILURE' SQLCODE
END-IF.
STOP RUN.
========================== INS EMP=============================================
IDENTIFICATION DIVISION.
PROGRAM-ID. INSEMP.
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
EXEC SQL
INCLUDE EMPTBLE
END-EXEC.
01 WS-EMP-REC.
02 WS-EID PIC 9(2).
02 WS-EFN PIC X(10).
02 WS-ELN PIC X(10).
02 WS-SAL PIC 9(15).
02 WS-DOJ PIC X(10).
02 WS-DEP PIC X(15).
PROCEDURE DIVISION.
MAIN-PARA.
PERFORM ACC-PARA.
PERFORM MOVE-PARA.
PERFORM INS-PARA.
STOP RUN.
ACC-PARA.
ACCEPT WS-EMP-REC.
MOVE-PARA.
MOVE WS-EID TO HV-EMPLOYEE-ID.
MOVE LENGTH OF WS-EFN TO HV-FIRST-NAME-LEN.
MOVE WS-EFN TO HV-FIRST-NAME-TEXT.
MOVE LENGTH OF WS-ELN TO HV-LAST-NAME-LEN.
MOVE WS-ELN TO HV-LAST-NAME-TEXT.
MOVE WS-SAL TO HV-SALARY.
MOVE WS-DOJ TO HV-JOINING-DATE.
MOVE LENGTH OF WS-DEP TO HV-DEPARTMENT-LEN.
MOVE WS-DEP TO HV-DEPARTMENT-TEXT.
INS-PARA.
EXEC SQL
INSERT INTO EMPLOYEE VALUES(:HV-EMPLOYEE-ID,
:HV-FIRST-NAME,:HV-LAST-NAME,:HV-SALARY,:HV-JOINING-DATE
,:HV-DEPARTMENT)
END-EXEC.
IF SQLCODE = 0
DISPLAY 'SUCCESS'
ELSE
DISPLAY 'FAILURE' SQLCODE
END-IF.
=================================SEL PGM2=====================================
your edit profile using the command RECOVERY O
IDENTIFICATION DIVISION.
PROGRAM-ID. SELPGM2.
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
EXEC SQL
INCLUDE EMPTB
END-EXEC.
PROCEDURE DIVISION.
EXEC SQL
SELECT EMPLOYEE_NO,SALARY
INTO
:HV-EMPLOYEE-NO,
:HV-SALARY
FROM EMPLOYEES_TB
WHERE EMPLOYEE_NO=101
END-EXEC.
IF SQLCODE = 0
DISPLAY 'SUCCESS'
DISPLAY HV-EMPLOYEE-NO,HV-SALARY
WPR048.DEC20.DB2PGM(SELPGM2) - 01.09
ELSE
DISPLAY 'FAILURE' SQLCODE
END-IF.
STOP RUN.
================================= UPD
PGM==============================================
IDENTIFICATION DIVISION.
PROGRAM-ID. SELPGM.
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
01 HV-EMP-REC.
02 HV-ENO PIC S9(3) COMP.
02 HV-ENAME PIC X(6).
02 HV-PNUMBER PIC X(10).
02 HV-AGE PIC S9(2) COMP.
02 HV-HIREDATE PIC X(10).
02 HV-JPROFILE PIC X(10).
02 HV-DEPTID PIC S9(4) COMP.
02 HV-SALARY PIC S9(5)V9(2) COMP-3.
02 HV-COMMISSION PIC S9(4) COMP.
PROCEDURE DIVISION.
EXEC SQL
UPDATE EMPLOYEES_TB SET AGE=39,SALARY=6000055
WHERE EMPLOYEE_NO=103
END-EXEC.
IF SQLCODE = 0
DISPLAY 'UPDATE SUCCESS'
ELSE
DISPLAY 'FAILURE' SQLCODE
END-IF.
STOP RUN.
========================================= UPD
CUR========================================
your edit profile using the command RECOVERY ON.
IDENTIFICATION DIVISION.
PROGRAM-ID. SELPGM.
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
EXEC SQL
INCLUDE EMPTB
END-EXEC.
EXEC SQL
DECLARE CUR1 CURSOR
FOR
SELECT EMPLOYEE_NO,EMPLOYEE_NAME,SALARY
FROM EMPLOYEES_TB WHERE DEPARTMENT_ID=10
FOR UPDATE OF SALARY
END-EXEC.
77 IND-SAL PIC S9(4) COMP.
PROCEDURE DIVISION.
MAIN-PARA.
PERFORM OPEN-PARA.
PERFORM FETCH-PARA UNTIL SQLCODE = 100.
PERFORM CLOSE-PARA.
STOP RUN.
OPEN-PARA.
EXEC SQL
OPEN CUR1
END-EXEC.
IF SQLCODE = 0
DISPLAY 'SUCCESS'
ELSE
DISPLAY 'FAILURE'
END-IF.
FETCH-PARA.
EXEC SQL
FETCH CUR1
INTO
:HV-EMPLOYEE-NO,
:HV-EMPLOYEE-NAME,
:HV-SALARY : IND-SAL
END-EXEC.
IF SQLCODE = 100
DISPLAY 'NO MORE RECORDS'
PERFORM CLOSE-PARA
STOP RUN
ELSE
DISPLAY HV-EMPLOYEE-NO , ' ' , HV-EMPLOYEE-NAME , ' ' ,
PERFORM CLOSE-PARA.
STOP RUN.
OPEN-PARA.
EXEC SQL
OPEN CUR1
END-EXEC.
IF SQLCODE = 0
DISPLAY 'SUCCESS'
ELSE
DISPLAY 'FAILURE'
END-IF.
FETCH-PARA.
EXEC SQL
FETCH CUR1
INTO
:HV-EMPLOYEE-NO,
:HV-EMPLOYEE-NAME,
:HV-SALARY : IND-SAL
END-EXEC.
IF SQLCODE = 100
DISPLAY 'NO MORE RECORDS'
PERFORM CLOSE-PARA
STOP RUN
ELSE
DISPLAY HV-EMPLOYEE-NO , ' ' , HV-EMPLOYEE-NAME , ' ' ,
HV-SALARY
EXEC SQL
UPDATE EMPLOYEES_TB SET SALARY = SALARY + 100
WHERE CURRENT OF CUR1
END-EXEC
IF SQLCODE = 0
DISPLAY 'UPDATED DATA'
END-IF.
CLOSE-PARA.
EXEC SQL
CLOSE CUR1
END-EXEC.
================================================================================