If you see the following error after a fail load with the massload command:
SQL0668N Operation not allowed for reason code "1" on table "<table-name>". SQLSTATE=57016
It means the table is in the Set Integrity Pending No Access state. The integrity of the table is not enforced and the content of the table may be invalid. An operation on a parent table or an underlying table that is not in the Set Integrity Pending No Access state may also receive this error if a dependent table is in the Set Integrity Pending No Access state.
Essentially the table is locked and not accessible to read or write. You can “unlock” the table by issuing the following commands.
From the command line:
db2 connect to wcdbname user user_id using password db2 set integrity for table_name immediate checked
set integrity for <var>table_name</var> immediate checked
from control center.
If this does not work you can run the following command:
SET INTEGRITY FOR tablename CHECK, FOREIGN KEY, MATERIALIZED QUERY, STAGING, GENERATED COLUMN IMMEDIATE UNCHECKED;
Which should remove the invalid items from the table and “unlock” it.
If you want more support with your software, look to Datix. As a one-stop shop that has implemented thousands of solutions, we know how to simplify your systems. We take a business-first approach with each of our clients to offer them a tailored software solution to meet all of their needs.
With over two decades in the industry and Infor CloudSuite consulting experts, Datix is the ERP consultant of choice for manufacturers and distributors. We believe in “being the best with the best” and look for partners who match our commitment to solving real issues and doing what it takes. Our in-depth analysis of our clients and their business needs allows us to maximize their software investments to the fullest.