A DROP of a FOREIGN Key fails with DSF error: MNIS
NIS means TABLE NOT IN SYNCH
- Explanation: Since the table was last cataloged, Datadictionary maintenance was done that affected the table.
- User Response: To get the table back in sync, recatalog the database that contains the table.
To Resolve:
The following SQL request should list the table in error:
SELECT AUTHID , SQLNAME , LOGGING, RECOVERY , BASE_NAME , DATABASE_ID
FROM SYSADM.AGGREGATE WHERE STATUS = 'P' AND ENTITY_TYPE = 'TBL'
AND ( SQL_INTENT = 'Y' OR SQL_INTENT = 'R')
AND (LOGGING = 'N' OR RECOVERY = 'N') ;
A CATALOG of the identified bases should resolve the problem.
This is related to Datadictionary Attribute DDD-SYNCH.
SQL tables which do not have attribute LOGGING/RECOVERY set to Y will get DDD-SYNCH set to N.
DDD-SYNCH Indicates if the table definition is consistent with the definition in the Data Definition Directory (DDD - internally maintained).
(Y indicates yes, N indicates no).