Bind concepts in DB2 cobol
Answers were Sorted based on User's Feedback
The first thing is Host languages.
Whatever we are using in cobol (other than cobol langauge
command) that are called HOST language.
DB2 is also one of the host language.
COBOL compiler does not know the host language and does not
compile the same.
we will take cobol-db2 program..
Here, we are introduce PRE-COMPILER....
Pre-compiler will spilt the cobol db2 program into two
module.
1. Cobol program (fully cobol,all the host language
commands will get replaced with "MOVE and CALL" statements.
2. DBRM (DataBast Request Module)- only those commands,
which are code within 'EXEC SQL .. END-EXEC.
Now, we have spited and we have separate for each..(COBOL
and DB2)..
We know about compilation process for COBOL.
Now come to BIND process....
Bind is nothing but, compilation process of DBRM.
The output of this compilation process(BIND) is Package.
If we bind the packages then we will get Plan/Application
plan.
When we do the link-edit the cobol program, a thread will
be created between the load module of cobol and plan.
| Is This Answer Correct ? | 76 Yes | 8 No |
As Sharath requested...
As we all know, all our programming(high level language) needs to be converted(compiled) into system-understandable(low level language) to be executed.
So, SQL statements in the COBOL programs needs to be compiled, such process is called BIND. DB2 Bind compiles all your sql statements(dbrm) into an executable format.
BIND also verifies all the information in the program with DB2 databases..
Here are the list of items happening through out BIND process (as of I know :) )
1. Syntax check of SQL query
2. Availability of Tables & columns in the database
3. It uses DB2 Optimizer to create the better access path. A clear way to read/update/delete table. like.. what are the columns are reading, which indexes needs to be used, the table space..etc.
So after BIND process finished, the Package/Plan contains exactly how to do, what we meant to do in system understandable language.
Hope it helps.. My apologies, if I confused or missed something.
| Is This Answer Correct ? | 10 Yes | 0 No |
Answer / lavenderguy
Brillian answer suresh..it helped me lot....
| Is This Answer Correct ? | 7 Yes | 1 No |
Answer / sheetal
simple and best answer.very helpful,thanks a ton.
| Is This Answer Correct ? | 5 Yes | 0 No |
Awesome explanation in Easy language...
| Is This Answer Correct ? | 5 Yes | 2 No |
Answer / sharath
Nice Explanation from suresh, Appreciate if he gives more information about Bind function.
| Is This Answer Correct ? | 0 Yes | 0 No |
how can you copy records present in a flat physical file to a database file(physical file).please explain in rpg400 with a simple example
Can you access the DB2 Directory table using SQL?
WHAT IS NULL INDICATOR ? WERE IS THIS USED? AND IF IT IS USED IN FILES CONCEPT? HOW DO WE USE IT?
How to resolve -803 sql code in DB2?
I HAVE 2 TABLES ONE IS EMP_TABLE AND ANOTHER DEPT_TABLE.EMP_TABLE CONTAINS NAME,DEPTNO,DEPTNAME,LOCATION AND DEPT_TABLE CONTAINS DEPTNO,DOJ(DATE OF JOINING).I WANT TO DISPLAY NAME,DEPTNAME,DOJ AND WHO ARE JOINED BETWEN 01- JAN-2007 TO 01-JAN-2008?
Is schema the same as database?
Can we able to find all the Table names under a Particular Plan?
How can we retrieve the total number of records in RPG & CLLE?
i hav created a program and moved to production but failed to create the table which is been used in the program. the program shows error as soon as it is moved or installed in production or shows error during its runtime. what is the sqlcode for this error
How do you declare a host variable (in COBOL) for an attribute named emp-name of type VARCHAR(25) ?
What is difference between rollback and commit?
the dd name for ksds is dest1 and what is the dd name for alternate index of ksds ? a.dest b.dest1 c.dest1a d.dd1