The SQL 2003 Standard introduced a schema called INFORMATION_SCHEMA. It's meant to be a set of views you can query using regular SELECT statements, if you need to know something about the defined triggers, or the structure of a table. Firebird doesn't have it, but you can retrieve everything you need from the System Tables. Let's see how we can extract some useful informations from them.
The article continues at http://www.alberton.info/firebird_sql_meta_info.html