Catalog of PostgreSQL queries for finding information about a PostgreSQL database and its design problems

AND
AND
AND
ANDFrom where does the query gets its information?
AND
AND

There are 961 queries.

Seq nrNameGoalTypeData sourceLast updateLicense...
201Triggers with arguments from the CREATE TRIGGER statementFind triggers that get an argument from the CREATE TRIGGER statement.GeneralINFORMATION_SCHEMA+system catalog base tables2023-12-22 12:35MIT License
202Triggers with SELECT (i.e., probably check data based on another table)If a trigger is used for enforcing a constraint, then it should take into account that due to the implementation of multiversion concurrency control (MVCC) in PostgreSQL, reading data does not block data modification and vice versa. Thus, there may be a need to lock the entire table or some row explicitly.GeneralINFORMATION_SCHEMA+system catalog base tables2020-11-06 14:51MIT License
203Triggers with the same name in different schemasFind trigger names that are used in a database in more than one schema. Different things should have different names. But here different triggers have the same name. Also make sure that this is not a duplication.GeneralINFORMATION_SCHEMA+system catalog base tables2020-11-06 14:51MIT License
204Unlogged tablesFind unlogged tables. These may improve the performance of INSERT operations, but with the price of possibly loosing data - an unlogged table is automatically truncated after a crash or unclean shutdown.Generalsystem catalog base tables only2020-11-06 14:51MIT License
205Updataple foreign tables that refer to another PostgreSQL tableFind foreign tables that have been defined based on postgresql_fwd foreign data wrapper and that are updatable. Make sure that updatability is in this case needed.GeneralINFORMATION_SCHEMA only2020-11-06 17:15MIT License
206UPDATE triggersFind all UPDATE triggers. Make sure that they specify a correct set of columns in which data modification will fire the trigger.GeneralINFORMATION_SCHEMA only2023-12-22 09:47MIT License
207Usage of base tablesFind for each derived table the list of base tables that are used by the derived table.GeneralINFORMATION_SCHEMA+system catalog base tables2024-01-14 00:50MIT License
208User-defined composite typesFind composite types that are created by a user, i.e., the type is not created automatically by the database management system based on a relation.Generalsystem catalog base tables only2020-11-06 14:51MIT License
209User-defined derived tablesFind user-defined views and materialized views. Pay attention to the outer join operations. One should use these if and only if there is a real need for them. Otherwise they just reduce performance. On the other hand, pay attention that outer join is used where it is logically needed.GeneralINFORMATION_SCHEMA+system catalog base tables2023-12-11 15:23MIT License
210User-defined non-trigger routines without parametersFind user-defined non-trigger routines with no parameters.GeneralINFORMATION_SCHEMA+system catalog base tables2021-11-03 20:05MIT License
211User-defined non-trigger SQL and PL/pgSQL routinesFind the non-trigger SQL and PL/pgSQL routines in non-systemic schemas.GeneralINFORMATION_SCHEMA+system catalog base tables2021-12-23 02:40MIT License
212User-defined routines that implement UPSERT operationFind user-defioned routines that implement UPSERT operation. Make sure that it is consistent with the contracts of database operations.GeneralINFORMATION_SCHEMA+system catalog base tables2021-10-25 17:02MIT License
213User-defined routines that produce a temporary tableFind user user-defined routines that produce a temporary tableGeneralINFORMATION_SCHEMA+system catalog base tables2021-10-25 16:25MIT License
214User-defined routines that read dataFind user-defined routines that contain SELECT … FROM or PERFORM … FROM operations. PostgreSQL uses multiversion concurrency control (MVCC). Therefore, SELECTs do not block modifications and vice versa. One has to take steps to achieve correct behaviour of data access code. In addition, one should not ask data with multiple queries if it is possible to achieve the result with only one query.GeneralINFORMATION_SCHEMA+system catalog base tables2023-12-21 15:00MIT License
215User-defined routines that use xmin hidden columnFind routines that contain a UPDATE or a DELETE statement that search condition refers to the xmin column. If one uses optimistic approach for dealing with the concurrent modifications of data, then xmin values should be presented by views and used in routines that modify or delete rows.GeneralINFORMATION_SCHEMA+system catalog base tables2021-11-04 11:30MIT License
216User-defined routines with dynamic SQLFind routines that use dynamic SQL. Make sure that dynamic SQL is indeed needed, i.e., the task cannot be solved with static SQL. Make sure that the routine is protected against attacks that use SQL injection method.GeneralINFORMATION_SCHEMA+system catalog base tables2021-11-04 11:09MIT License
217User-defined routines with the same parameters (same name and type) regardless of the order of parametersFind routines with the same parameters (same name and type) regardless of the order of parameters. Make sure that there is no accidental duplication. The query helps users to group together routines that probably have related tasks.GeneralINFORMATION_SCHEMA+system catalog base tables2020-11-06 14:51MIT License
218Using an internal data type - nameFind base table columns that use type name that is used in system catalog tables. It is not a problem if the column is meant for recording identifiers of database objects.GeneralINFORMATION_SCHEMA only2021-03-30 13:36MIT License
219Vacuum and analyze status of base tablesFind for each base table the last time when the table has been vacuumed or analyzed (either manually or automatically).Generalsystem catalog base tables only2023-10-06 13:48MIT License
220Address field size is incorrect (too short or too long)Find base table columns that are meant for recording different types of addresses where the filed size does not take into account the possible maximum length.Problem detectionINFORMATION_SCHEMA only2023-11-09 12:55MIT License