Ich würde mich auf das Script nicht verlassen. Es enthält mehrere Ungereimtheiten.
Die Select Statements darin arbeiten auch mit Views, die da einfach nicht reingehören.
Die Tabelle mit der "Reihenfolge" der Tabellen enthält faktisch keine Reihenfolge, sondern nur Tabellennamen, deren Reihenfolge sowohl beim Befüllen als auch beim späteren Auslesen nicht definiert ist. (Selbst wenn man davon ausgeht, dass die ID Spalte vlt. über einen Generator befüllt wird.)
Außerdem scheint mir die Verwendung der Indexnamen fragwürdig, aber vielleicht ist das ja bei Firebird fest vorgegeben.