Unfortunately you have to modify the SQLite3 source code to add/change pragma's. It is very easy to do, but I do not think there is a way to dynamically add in pragma extensions. I modified table_[x]info to add aff, coll, rowid, autoinc and the cid=-1 internal rowid column (affinity, collation, whether a rowid or not, and if a rowid, whether autoincrement is in effect). I added database_info(schema, type, name), trigger_list(seq, name, tr_tm, op). table_list shows schema, type, name, ncols, ro, eph, rid, pk, ai, named, strict, shad for each table. (respectively the schema/name/type (table, etable, vtable, view), number of columns, whether read only, whether ephemeral, whether has a rowid, whether has a primary key, whether the rowid uses autoincrement, whether the rowid is "named", whether the table is strict, and whether it is a shadow table or not. Patches to mkpragmatab.tcl.patch and pragma.c.patch are on <http://www.dessus.com/files/mkpragmatab.tcl.patch> and <http://www.dessus.com/files/pragma.c.patch> respectively. I believe the patches are up-to-date. I regenerate them from time to time as the SQLite3 code changes.