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 do you do the EXPLAIN of a dynamic SQL statement?
How does the processing of a correlated subquery differ from a non correlated subquery?
When do you specify the isolation level? How?
if any of the column names is provided wrong, where do you get the error(during precompilation or during Bind)
Is Cursor exicutable ?
Is db2 free?
What is temporal table in db2?
what is plan? is plan executable or package?
What is access path in db2?
What is db2 isolation?
How many databases can be created inside an instance in db2 ?
what is diffrence b/w file-aid tool and file-aid utility???