With DB2, the following error is reported when you insert the statement manually:
DB2 SQL error:sqlcode=-803, sqlstate=23505, sqlerrmc=2.
Start looking for solutions on the Internet, the following online solution summary (in fact, did not solve my problem):
The first kind of solution:
1, check the next, the general meaning is violated the uniqueness of the constraints Ah!
2, however, I db2 describe table XX found this table only ID is not empty Ah!
3, finally, directly write a SQL on the command line execution, the same error and code
Finally, I looked at the index of the following table and found that a composite index was built before it dawned.
Originally, the DBA built a unique constraint and index yesterday!
Although describe comes out only the ID cannot be empty, but the uniqueness constraint and index are added to prevent data from being inserted.
Second Solution:
[Bug]:error [23505] [ibm][db2/aix64] sql0803n an INSERT statement, an UPDATE statement, or one or more values in a foreign key update caused by a DELETE statement is invalid because the primary key identified by "2", The unique constraint or unique index restricts the index key of the table "XXX" to a duplicate value. sqlstate=23505
This problem has been reported today when working with the database, causing a table in the data to insert only one piece of data. A brief look at the original is a violation of the unique constraints.
23505 a constraint violation that is imposed by a unique index or a unique constraint occurs.
Violation of the unique constraint, this time should look at the primary key, index and so on. It was later found that an index was created unique, the unique index, but when the data is inserted, the unique index is not assigned, and is empty, so error.
[Workaround:] Change the unique index to a normal index.
My own Workaround:
Foreign key issues, add data to other tables, and then add data to the table.
DB2 inserting data failed