5 is very old!
We are now at 7.25 for SE.
Is your database big? Could you try to unload the whole database and reload it? You can use a script to do that:
UNLOAD TO dbunload.sql DELIMITER ';'
SELECT "UNLOAD to " || trim(tabname) || ".sql SELECT * FROM " || trim(tabname)
FROM SYSTABLES
WHERE tabid > 99
AND tabtype = 'T'
Create a new database and reload it.
Do you get error messages? Which ones?
Which system table gets corrupted?
Is it maybe a disk problem?