Hi
I need to comment a feild in a Insert query,which is declared as notnull,when it is trying to insert the query its throwing the -407error.
can any one advice me on this...plz
to overcome -407 error in Db2
Moderators: Kalicharan, Moderator Group
harimca
SQLCODE -407, Error: AN UPDATE, INSERT, OR SET VALUE IS NULL, BUT THE OBJECT COLUMN CANNOT CONTAIN NULL VALUES.
Why are u commenting it is there any specific reason for it....why dont you
have the field still and initialise appropriately spaces/zero based on the
field.
Since the field can not contain NULL values you are getting that problem,
if we are not inserting some value into the field either that particular
field should be defaulted in DML when the TABLE is defined. You can
check this with ur DBA, or usign the DB2 tools/adv options we can
verify if the filed is defaulted or not.
Thanks,
Veera.
SQLCODE -407, Error: AN UPDATE, INSERT, OR SET VALUE IS NULL, BUT THE OBJECT COLUMN CANNOT CONTAIN NULL VALUES.
Why are u commenting it is there any specific reason for it....why dont you
have the field still and initialise appropriately spaces/zero based on the
field.
Since the field can not contain NULL values you are getting that problem,
if we are not inserting some value into the field either that particular
field should be defaulted in DML when the TABLE is defined. You can
check this with ur DBA, or usign the DB2 tools/adv options we can
verify if the filed is defaulted or not.
Thanks,
Veera.
I guess I don?t understand where the problem is.
The frontend screen had this column on it and the clients could enter the value and you would insert a row, including the column in question with the value the client entered.
Now you want to remove the column from the frontend screen so the client can no longer update the value.
You need to remove the column from the screen, but you still need to present a value (non-null) when you insert into the DB2 row. Pick a constant to update the column with and use that in place of what the client would have entered.
As Veera suggested, if the column is a ?DECIMAL? you could use zero (0) and if CHAR use space ? ?, etc.
Let us know what you deside.
Dave
The frontend screen had this column on it and the clients could enter the value and you would insert a row, including the column in question with the value the client entered.
Now you want to remove the column from the frontend screen so the client can no longer update the value.
You need to remove the column from the screen, but you still need to present a value (non-null) when you insert into the DB2 row. Pick a constant to update the column with and use that in place of what the client would have entered.
As Veera suggested, if the column is a ?DECIMAL? you could use zero (0) and if CHAR use space ? ?, etc.
Let us know what you deside.
Dave
harimca,
I understand what you are saying that you will no longer get a value from the online screen so you wanted to comment that field.
Few things needs to be decided as which approach we are gonna take
to prevent the abend/SQL error.
1.But still the column in DB2 table is going to be there right , are you
planning to delete the cloumn too from the Table.
2. I do not think you are planning to delete the table , so best possible
thing to address the situation is have the field in your insert query
with deault value of spaces/zero initaised into that field, it should
prenvent the SQL ERROR.
What i was saying earlier is that if the column of table is defined
such that it should be NOT-NULL then there is no way that you
can have the column without any value.
So while defining the TABLE they also can DEFAULT a value
for NOT-NULL columns in the declaration itself i mean the DDL.
By DEFAULT i mean if no value is inserted thru the QUERY then
the column by default will get the DEFAULT value as declared
while creating the TABLE , so reg this i said you can check with
DBA if there is possibilty to re-visit the DDL and default the value
of the column and if that is done then you can comment the field
in your query.
But the best possible thing is i would suggest you to have the field
as part of query with SPACES/ZEROS as value for it.
I blive Dave is also suggesting the same.
I wish this clears you query. And sorry for a big description
P.S : And please i would request to post back your replies as what you
have decided and finally how it worked , this wil will help other
users if they come across same problem.
Thanks,
Veera.
I understand what you are saying that you will no longer get a value from the online screen so you wanted to comment that field.
Few things needs to be decided as which approach we are gonna take
to prevent the abend/SQL error.
1.But still the column in DB2 table is going to be there right , are you
planning to delete the cloumn too from the Table.
2. I do not think you are planning to delete the table , so best possible
thing to address the situation is have the field in your insert query
with deault value of spaces/zero initaised into that field, it should
prenvent the SQL ERROR.
What i was saying earlier is that if the column of table is defined
such that it should be NOT-NULL then there is no way that you
can have the column without any value.
So while defining the TABLE they also can DEFAULT a value
for NOT-NULL columns in the declaration itself i mean the DDL.
By DEFAULT i mean if no value is inserted thru the QUERY then
the column by default will get the DEFAULT value as declared
while creating the TABLE , so reg this i said you can check with
DBA if there is possibilty to re-visit the DDL and default the value
of the column and if that is done then you can comment the field
in your query.
But the best possible thing is i would suggest you to have the field
as part of query with SPACES/ZEROS as value for it.
I blive Dave is also suggesting the same.
I wish this clears you query. And sorry for a big description
P.S : And please i would request to post back your replies as what you
have decided and finally how it worked , this wil will help other
users if they come across same problem.
Thanks,
Veera.
FREE TUTORIALS
Tutorials
Free tutorials from mainframegurukul
- JCL Tutorial
Covers all important JCL concepts. - Cobol Tutorial
This tutorials covers all Cobol Topics from STRING to COMP-3. - DB2 Tutorial
DB2 Tutorial focuses on DB2 COBOL Programming. - SORT Tutorial
This Tutorial covers all important aspects of DFSORT with examples - CICS Tutorial
This CICS tutorial covers CICS concepts and CICS Basics, CICS COBOL Programming.
Interview
Mainframe Interview questions
- Cobol Interview Questions
50+ Interview Questions - JCL Interview Questions
50+ Interview Questions - DB2 Interview Questions
100+ Interview Questions - CICS Interview Questions
70+ Interview Questions - VSAM Interview Questions
27 Interview Questions
Other References
Mainframe Tools and others
- XPEDITER Reference
Explains how we can debug a program - FILEAID Reference
Explains how to browse , edit and delete datasets - Change Man Reference
Quick Start tutorial on Changeman - Abend Reference
Important Abend codes explained - FaceBook Page
MainframeGurukul FaceBook Page - LinkedIn Page
MainframeGurkul Linkedin Page