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...
261Do not clone tablesFind cases where a base table has been split horizontally into multiple smaller base tables based on the distinct values in one of the columns of the original table. Each such newly created table has the name, a part of which is a data value from the original tables. Find base tables that have the same columns (column name, column order, data type) and the difference between the tables are the numbers in the table names (table1, table2, etc.).Problem detectionINFORMATION_SCHEMA only2021-03-18 14:43MIT License
262Do not create multiple columns for the same attributeFind base tables that implement recording multivalued attribute values with the help of repeating group of columns. Find base tables that have more than one columns with the same type and field size and the difference between the columns are the numbers in the column names (column1, column2, etc.).Problem detectionINFORMATION_SCHEMA only2021-03-18 15:57MIT License
263Do not create user-defined routines that have the same name as some installed extension routineAvoid creating user-defined routines that have the same name as some extension routine because it may cause confusion.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-10-25 16:14MIT License
264Do not format comma-separated lists (based on column names)Find, based on column names, cases where a multi-valued attribute in a conceptual data model is implemented as a textual column of a base table or a foreign table. Expected values in the column are strings that contain attribute values, separated by commas or other separation characters.Problem detectionINFORMATION_SCHEMA only2021-03-10 12:57MIT License
265Do not format comma-separated lists (based on default values)Find, based on default values, cases where a multi-valued attribute in a conceptual data model is implemented as a textual column of a base table or a foreign table. Expected values in the column are strings that contain attribute values, separated by commas or other separation characters.Problem detectionINFORMATION_SCHEMA only2023-12-30 10:59MIT License
266Do not format comma-separated lists (based on user data)Find, based on the data that users have recoreded in a database, cases where a multi-valued attribute in a conceptual data model is implemented as a textual column of a base table. Expected values in the column are strings that contain attribute values, separated by commas or other separation characters.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-03-12 15:02MIT License
267Do not leave out referential constraints (based on composite keys)Try to find missing foreign key constraints. Find columns of base tables that are not covered by any foreign key constraint but belong to a composite key, do not have an associated sequence generator, and have a name that refers to the possibility that these are used to record some kind of codes or id's. Moreover, there must be at least one other base table that has a column with the same name. Such strategy would find missing constraints in tables that implement many-to-many relationship types but which that are not complete "islands" in terms of missing foreign key constraints.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-10-31 19:21MIT License
268Do not leave out the referential constraints (based on adjacency list design)Try to find missing foreign key constraints. Find non-key and non-foreign key columns of base tables that do not have an associated sequence generator, and that name refers to the possibility that the column holds parent identifiers.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-03-18 11:13MIT License
269Do not leave out the referential constraints (based on classifiers)Find non-key and non-foreign columns of base tables with a textual column and small field size in case of which there is a table with the name that is similar to the column name. Perhaps the table is a classifier table and the column should have a foreign key constraint referencing to the table.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-03-18 11:14MIT License
270Do not leave out the referential constraints (based on column names)Try to find missing foreign key constraints. Find columns of base tables that are not a part of any primary key, unique, and foreign key constraint, do not have an associated sequence generator, but have a name that reffers to the possibility that these are used to record some kind of codes or id's.Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-11-26 16:35MIT License
271Do not leave out the referential constraints (based on column names) (2)Try to find missing foreign key constraints. Find columns of base tables that are not a part of any primary key, unique, and foreign key constraint, but have a name that reffers to the possibility that these are used to record references to a user. Exclude columns that have the default value CURRENT_USER or SESSION_USER.Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-12-30 10:29MIT License
272Do not leave out the referential constraints (islands)Try to find missing foreign key constraints. Find base tables that do not participate in any referential constraint (as the referenced table or as the referencing table). These tables are like "islands" in the database schema.Problem detectionsystem catalog base tables only2021-03-10 12:20MIT License
273Do not leave out the referential constraints (pairs of tables)Try to find missing foreign key constraints. Find pairs of base table columns that have the similar name, perhaps the same type, and that are not associated through a foreign key relationship.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-02-25 17:29MIT License
274Do not refer to the table schema in the references to columnsFind routines where in SELECT or UPDATE statements references to columns are prefixed with references to the table schema. Referring to schema in this context bloats the code.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-11-04 17:32MIT License
275Do not register durationFind columns of base and foreign tables that based on the column name and type are used to register duration (including the age).Problem detectionINFORMATION_SCHEMA only2021-03-12 14:48MIT License
276Do not specify a list of values in a table column definitionFind cases where the list of valid data values in the column is specified in the column definition (in addition to specifying the type of the column) by using, for instance, check constraints or enumerated types. The check constraint is either associated directly with a table or is associated with a domain.Problem detectionINFORMATION_SCHEMA+system catalog base tables2022-06-09 14:30MIT License
277Do not use a generic attribute tableFind base tables that implement a highly generic database design (EAV design - Entiry-Attribute-Value design), according to which attribute values are recorded in a generic table that contains attribute-value pairs.Problem detectionINFORMATION_SCHEMA only2021-03-07 17:40MIT License
278Do not use approach that one size fits all (primary key columns)Find base base tables have the simple primary key that contains the column with the (case insensitive) name id and an integer type. In addition, the primary key values are generated automatically by the system by using a sequence generator.Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-03-18 20:58MIT License
279Do not use approach that one size fits all (unique index columns)Find base base tables have a simple unique index (not associated with a constraint) that contains the column with the (case insensitive) name id and an integer type. In addition, the key values are generated automatically by the system by using a sequence generator.Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-01-07 15:12MIT License
280Do not use dual-purpose foreign keysFind cases where the same column of a base table T is used to record references to multiple base tables. In addition, one has to add additional column to T for holding metadata about the parent table, referenced by the current row.Problem detectionINFORMATION_SCHEMA only2021-03-07 10:56MIT License