On the execution of DB2 SQL declaration, it returns statement execution information. This information comprises of SQL return code (SQLCODE) and SQLSTATE that designates whether testimonial implementation was flourishing.
SQL return rules are offered by DB2 UDB for OS/390 and z/OS can be puzzling and frequently orientation handbooks are not obtainable or shut at hand while you actually needed them. This suggestion will evaluate SQL return code dispensation and ordinary SQL issue situation codes you might come across in DB2.
- If SQLCODE = 0, implementation was victorious.
- If SQLCODE > 0, finished with a warning.
- If SQLCODE < 0, execution unsuccessful.
- If SQLCODE = 100, “no data” was located. For instance, a FETCH declaration revisited no data since pointer was to be found after final row of result table.
- New usage of DB2 V8, when DB2 expands a diverse row FETCH announcement, the stuffing of SQLCODE is set to +100 if last row in table has arrived with number of rows.
SQLCODE – Unsuccessful SQL Execution
SQL Error Code -117 ASSIGNED NUMBERS OF VALUES IS NOT SIMILAR TO IMPLIED OR SPECIFIED COLUMNS.
Recommendation: You must provide one value for each column.
SQL Error Code -150 INSERT, DELETE, OR UPDATE STATEMENT OBJECT IS A VIEW, SYSTEM PRESERVED MATERIALIZED INQUIRY TABLE, OR ALTERATION TABLE DUE TO WHICH REQUESTED FUNCTION IS NOT ALLOWED.
Recommendation: Be confident to stipulate base DB2 view/table names to INSERT proclamations.
SQL Error Code -180 THE TIME, DATE OR STAMP VALUE IS NOT INVALID.
Recommendation: Authenticate data value in correct assortment and worth category.
SQL Error Code -181 THE DATATIME REPRESENTED FOR STRING IS NOT A VALID DATETIME VALUE.
Recommendation: Substantiate format of data with SQL Allusion Conduct
SQL Error Code -204 UNDEFINED NAMES.
Recommendation: Approve OBJECT NAME or DB2 CREATOR positioned within SQL statements.
SQL Error Code -227 FETCH ORIENTATION IS NOT PERMITTED, SINCE CURSOR cursor-name HAS UNIDENTIFIED LOCATION (sqlcode,sqlstate).
Recommendation: EXIT and re-OPEN the cursor; For scrolling and using (FIRST, LAST, BEFORE, AFTER, or ABSOLUTE) to find legitimate arrangement.
SQL Error Code -305-OUTPUT HOST VARIABLE NUMBER position-number CANNOT BE ASSIGNED WITH NULL VALUE AS NO POINTER VALUE IS PRECISED.
Recommendation: Insert variable of null indicator to choose statement in format of “column:hostvarind”.
SQL Error Code -501-CURSOR DETECTED WITHIN CLOSE STATEMENT OR FETCH IS CLOSED.
Recommendation: Truthful logic in application agenda to OPEN cursor earlier than FETCHING or CLOSING statement.
SQL Error Code -502-CURSOR IDENTIFIED IN UNWRAPPED STATEMENT IS OPEN ALREADY.
Suggestion: Proper logic in program application for CLOSING the CURSOR earlier than OPENING statement.
SQL Error Code -503 A COLUMNS CAN’T BE UPDATED FOR THE REASON THAT IT’S NOT RECOGNIZED WITHIN UPDATE SECTION OF SELECTED STATEMENT OF CURSOR.
Suggestion: Use FOR UPDATE statement within your cursor.
SQL Error Code -530– INVALID INSERT OR UPDATE VALUE FOR FOREIGN KEY constraint-name
Recommendation: Verify that INSERT row for DB2 PARENT table is finished earlier than INSERTING row in CHILD desk.
SQL Error Code -532- THE RELATIONSHIP restriction name CONFINED THE ROW DELETION USING RID X’rid-number’.
Recommendation: Alter the application to REMOVE CHILD table row previous to row DELETION on PARENT board.
SQL Error Code -551 auth-id LACKS THE ADVANTAGE TO CARRY OUT OPERATION ON OBJECT object-name.
Recommendation: Speak to support DBA to FUND required freedom.
SQL Error Code -803 AN UPDATED OR INSERTED VALUE IS UNACCEPTABLE SINCE INDEX IN INDEX SPACE indexspace-name RESTRAINS COLUMNS OF TABLE SO NO TWO ROWS CONSIST REPLICA VALUES WITHIN COLUMNS. RID OF ACCESSIBLE ROW IS Xrid.
Recommendation: Confirm DB2 INDEX and, if necessary, transform statement to UPDATE.
SQL Error Code -805 DBRM OR PACKAGE NAME location-name.collection-id.dbrm-name.consistency-token NOT FOUND IN PLAN plan-name. REASON reason.
Recommendation: Make certain that COLLECTION name is within DB2 PLAN. Again compile and BIND DB2 program. Validate approved LOAD library being utilized.
SQL Error Code -811 OUTCOMES OF EMBEDDED STATEMENT OR SUBSELECT IN SET CLAUSE OF AN UPDATE STATEMENT IS TABLE OF MORE THAN ONE ROW, OR THE RESULT OF SUBQUERY OF BASIC PREDICATE IS MORE THAN A VALUE.
Suggestion: -811 are frequently noticed after checking program for DB2 data continuation. Think using fresh DB2 V8 FETCH FIRST ROW ONLY characteristic in its place.
SQL Error Code -818 THE PRECOMPILER-GENERATED TIMESTAMP x WITHIN LOAD COMPONENT IS DISSIMILAR IN COMPARISON TO BIND TIMESTAMP y BUILT USING DBRM z.
Recommendation: Again compile and ADJOIN DB2 program. Validate that correct LOAD library is utilized.
SQL Error Code -904 UNPRODUCTIVE EXECUTIONS DUE TO UNAVAILABLE SOURCE. REASONs are reason-code, TYPE OF RESOURCE resource-type, AND NAME OF RECOURCE resource-name.
Recommendation: -904 is habitually caused due to utility database job that has begun desired DB2 object within utility form. Verify DB2 Master Log for more information on resource name – contact DBA.
SQL Error Code -913 UNPRODUCTIVE EXECUTION BECAUSE OF TIMEOUT OR DEADLOCK, REASON CODE reason-code, TYPE OF RESOURCE resource-type, AND RESOURCE NAME resource-name.
Recommendation: Analyze DB2 Master Log to discover procedure holding DB2 locks. Add additional COMMITs to program enclosing DB2 source.
SQL Error Code -922 FAILURE OF AUTHORIZATION: error-type ERROR. REASON reason-code.
Recommendation: Association to DB2 has botched because of USER PLAN OR AUTHORITY. Get in touch with DBA to test authorizations of DB2.
SQL Error Code -927 THE LANGUAGE INTERFACE (LI) WAS CALLED WHEN CONNECTED ENVIRONMENT WAS UNESTABLISHED. THE PROGRAM SHOULD INVOKE UNDER COMMAND OF DSN.
Complete automatic resolution
If you have not created any backup and if there is any unexpected situations comes in such as hardware or software failure, human errors, DB2 corruption etc. The in such situations you can use DB2 file repair tool to repair and recover your entire DB2 database. With the help of this tool you can restore every elements of DB2 database. It comes with advanced algorithm that scans the DB2 database and recovers the entire database.
STEPS TO SOLVE DB2 FILE ERROR
Step 1: Install and launch DB2 File Repair tool. It will provide two options to repair db2 file, first option is if database is attached to DB2, then you can choose option ‘Repair the database stored at default location‘, and if database is not joined to DB2 then choose manual database selection.
Step 2: It will provide you the list of database attached to DB2. Select the particular database you want to repair and recover corresponding database objects.
Step 3: In this step this tool provide the list of recoverable database files. You can see the preview by clicking on it.
Step 4: Give the path location for the recoverable database and its object to be saved. Click on ‘Ok’ button.