I want to truncate all tables under a specific schema in DB2 which is worked on a Linux Server. But I have no right to ALTER TABLE to disable the foreign-key constraints.
Is there anyway to do this?
I’m considering performing a topology sort based on the constraints between tables, but it is a little bit complex.
Any good idea on this problem?
You don’t say what platform you’re on. This answer is specific to DB2 on Linux, UNIX and Windows.
If you have LOAD, INSERT and DELETE privileges on the table(s) you can use the LOAD command with an empty file to truncate the tables, regardless of whether there are foreign key constraints:
This will place any dependent tables in check pending state… Once you have truncated all of your tables you would use the
SET INTEGRITYstatement to take all of the tables out of check pending.