Well, the idea was that we have a admin user that can change schema and
drop things and the like and the 'normal' user that the app runs with
that cannot do those things. That way if the application is compromised,
they can only do things the normal user could do, not dropping entire
tables or the like.

Well, they can still run "DELETE FROM table_name" on each table, which is pretty much like dropping the entire DB, since the schema doesn't have much value in itself.

Aurélien