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...
521LIKE with a regular expression patternFind expressions that use LIKE (including ILIKE) predicate with a regular expression patterns. In a LIKE pattern one can use only _ and % metasymbols to construct a pattern.Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-10-21 10:38MIT License
522LIKE without a pattern with % or _Find expressions that use LIKE predicate witout a pattern that contains at least one % or _ sign.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-02-25 17:30MIT License
523Mandatory columns for holding large textual values (comments, descriptions, etc.)Find mandatory (NOT NULL) base table columns that name, column type, and field size refers to the possibility that these are used to register large textual values like comments, descriptions, and explanations.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-02-25 17:29MIT License
524Many-to-many relationship types that do not have additional attributesFind base tables that implement many-to-many relationship types that do not permit repeating relationships. More specifically find tables that have two or more foreign keys and all the columns of the table are either foreign key columns or a surrogate key column. It could be that during the system analysis a mistake has been made and some attributes of the entity type that represents the relationship type have not been discovered.Problem detectionINFORMATION_SCHEMA+system catalog base tables2022-01-21 10:48MIT License
525Many-to-many relationship types that do not permit repeating relationships and do not have additional attributesFind base tables that implement many-to-many relationship types that do not permit repeating relationships. More specifically find tables that have two or more foreign keys and all the columns of the table belong to a foreign key. In addition, all the table columns must be covered by a primary key or unique constraint. It could be that during the system analysis a mistake has been made and some attributes of the entity type that represents the relationship type have not been discovered.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-03-28 12:04MIT License
526Meaningless terms in derived tablesFind derived tables that subquery contains terms "foo", "bar", "foobar", or "baz".Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-01-06 14:08MIT License
527Meaningless terms in namesFind names of database objects that contain terms "foo", "bar", "foobar", or "baz".Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-03-17 01:07MIT License
528Meaningless terms in routinesFind routines that subquery contains terms "foo", "bar", "foobar", or "baz".Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-01-06 14:09MIT License
529Middle-manFind a routine that's only task is to invoke another routine. If a routine performs only one action, delegating work to another routine, why does it exist at all?Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-11-05 12:48MIT License
530Missing USAGE privileges on schemaIf a user has a privilege to use a schema object, then the user must also have the usage privilege on the schema that contains the object.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-11-21 12:06MIT License
531Mixing Concat and ||Find cases where different means are used to concatenate text within the same object.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-12-03 14:36MIT License
532Mixing Concat and CoalesceFind cases where different means are used to deal with NULLs in case of concatenating texsts.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-12-08 14:25MIT License
533Mixing different mechanisms to generate surrogate valuesUse the same mechanism of generating surrogate key values throughout the database. The use of SERIAL notation/explicitly creating a sequence generator and declaration of a column as an identity column will cause the creation of an external and internal sequence generator, respectively. Nevertheless, one should try to stick with using one of the mechanisms in order to cause less confusion. "If you do something a certain way, do all similar things in the same way." (Robert C. Martin, Clean Code)Problem detectionINFORMATION_SCHEMA only2021-03-08 00:42MIT License
534Mixing the use of TEXT and VARCHAR type in case of base table columnsDeclaring a column to have the type TEXT or the type VARCHAR (without the maximum number of characters) has the same end result in terms of what data can be recorded in the column. Nevertheless, one should try to stick with using one of the type names in order to cause less confusion. "If you do something a certain way, do all similar things in the same way." (Robert C. Martin, Clean Code)Problem detectionINFORMATION_SCHEMA only2021-03-12 15:06MIT License
535Multiple columns in the same base table that are associated with a sequence generatorFind base tables where multiple columns are associated with a sequence generator. Do not create unnecessary sequence generators. If one uses in a table a surrogate key, then it is enough to have one column where the values are generated by using a (external or internal) sequence generator.Problem detectionINFORMATION_SCHEMA only2021-03-08 00:41MIT License
536Multiple deletes from the same table in a routineCode should be as compact as possible and system should make as little work as necessary in order to solve a task. Thus, instead of deleting different rows of the same table with different DELETE statements one should try to do it with one statement. The query excludes routines where IF statement is used.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-01-24 14:15MIT License
537Multiple RETURNING clauses in a SQL functionFind SQL functions that have multiple statements with the RETURNING clause.Problem detectionINFORMATION_SCHEMA+system catalog base tables2023-12-21 13:59MIT License
538Multiple selects from the same table in a routineCode should be as compact as possible and system should make as little work as necessary in order to solve a task. Thus, instead of selecting different fields of the same row with different SELECT INTO statements one should try to do it with one statement.Problem detectionINFORMATION_SCHEMA+system catalog base tables2021-11-04 12:10MIT License
539Multiple simple keys with integer valuesFind base tables that have more than one primary key or unique constraints that involve exactly one integer column. Do not overcomplicate the database. Perhaps some column in the table is redundant.Problem detectionINFORMATION_SCHEMA+system catalog base tables2022-11-03 11:15MIT License
540Multiple tables share the same state classifierFind cases where multiple tables share the same state classifier. For each main entity type one should create a separate state classifier table. Even if the classifier values are the same in case of two entity types for now these may become different in the future. Having a shared state classifier table usually means very simplistic state machines (states active and inactive) that could point to the gaps in analysis.Problem detectionsystem catalog base tables only2023-12-30 15:51MIT License