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 996 queries.

Seq nrNameGoalTypeData sourceLast updateLicense...
41Names of database objects that contain two or more consecutive underscores or spaces as separators of name componentsImprove the readability of names. Find the names (identifiers) of user-defined database objects that contain two or more consecutive underscores or spaces that separate name components, i.e., these are not at the beginning and in the end of the name. Example of such names are person__id or "person id". Names with duplicate underscores use snake case style but duplication of underscores does not improve the usability of the name.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:22MIT License
42Perhaps is not snake_case - long subsections without underscoresFind names that perhaps do not use the snake_case naming style because the name contains a long subsection (at least 20 characters) without underscores. Prefer snake_case over PascalCase and camelCase in names.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:22MIT License
43The number of names that use different writing stylesFind the number of names of user-defined database objects that use snake_case, ALL CAPS, Sentence case, camelCase or PascalCase style. Make sure that the naming style is consistent.Sofware measureINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:22MIT License
44Delimited identifiersDelimited identifiers (quoted identifiers) are case sensitive. Identifiers of database objects should be case insensitive in order to simplify their management.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:21MIT License
45Using in some way reserved (in PostgreSQL) SQL keywords as the names of a database object (detailed view)"Names in software are 90 percent of what make software readable. You need to take the time to choose them wisely and keep them relevant. Names are too important to treat carelessly. Names should not cause confusion." (Robert C. Martin, Clean Code) Names should not cause confusion. Find the names (identifiers) of user-defined objects that are SQL keywords that are not completely unreserved in PostgreSQL, i.e., these either never cannot be used as regular identifiers or cannot be used in case of some type of database objects. In PostgreSQL "there are several different classes of tokens ranging from those that can never be used as an identifier to those that have absolutely no special status in the parser as compared to an ordinary identifier. " (PostgreSQL manual) Moreover, such identifiers are often too general, i.e., do not provide enough information about the named object.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:21MIT License
46Extreme contractionFind names that contain extremely short terms, due to an excessive word contraction, abbreviation, or acronym usage.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:20MIT License
47Names of database objects with perhaps too many digitsFind the names of database objects where more than half the signs are digits.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:20MIT License
48Name does not contain any vowelsFind names of database objects that do not contain any vowels.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:19MIT License
49Name does not contain any vowels (aggregate view)Find aggregate information about the names of database objects that do not contain any vowels.Sofware measureINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:19MIT License
50Name contains only consonants and digitsFind names of database objects that contain only consonants and digits.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:18MIT License
51Names of database objects with perhaps too many subcomponents (terms) that consist of only consonantsFind names of database objects where the number of subcomponents (terms) that consist of only consonants is bigger than the number of subcomponents that contain at least one vowel.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:18MIT License
52Using in some way reserved (in PostgreSQL) SQL keywords as the names of a database object (aggregate view)"Names in software are 90 percent of what make software readable. You need to take the time to choose them wisely and keep them relevant. Names are too important to treat carelessly. Names should not cause confusion." (Robert C. Martin, Clean Code) Names should not cause confusion. Find the distinct names (identifiers) of user-defined objects that are SQL keywords that are not completely unreserved in PostgreSQL, i.e., these either never cannot be used as regular identifiers or cannot be used in case of some type of database objects. In PostgreSQL "there are several different classes of tokens ranging from those that can never be used as an identifier to those that have absolutely no special status in the parser as compared to an ordinary identifier. " (PostgreSQL manual) Moreover, such identifiers are often too general, i.e., do not provide enough information about the named object.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:17MIT License
53Using unreserved (in PostgreSQL) SQL keywords as the names of a database object (aggregate view)"Names in software are 90 percent of what make software readable. You need to take the time to choose them wisely and keep them relevant. Names are too important to treat carelessly. Names should not cause confusion." (Robert C. Martin, Clean Code) Names should not cause confusion. Find the distinct names (identifiers) of user-defined objects that are SQL keywords that are completely unreserved in PostgreSQL. In PostgreSQL "there are several different classes of tokens ranging from those that can never be used as an identifier to those that have absolutely no special status in the parser as compared to an ordinary identifier. " (PostgreSQL manual) Although the names are unreserved keywords in PostgreSQL these could be reserved keywords in other systems, which would complicate database migration. Moreover, such identifiers are often too general, i.e., do not provide enough information about the named object.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:17MIT License
54Using unreserved (in PostgreSQL) SQL keywords as the names of a database object (detailed view)"Names in software are 90 percent of what make software readable. You need to take the time to choose them wisely and keep them relevant. Names are too important to treat carelessly. Names should not cause confusion." (Robert C. Martin, Clean Code) Names should not cause confusion. Find the names (identifiers) of user-defined objects that are SQL keywords that are completely unreserved in PostgreSQL. In PostgreSQL "there are several different classes of tokens ranging from those that can never be used as an identifier to those that have absolutely no special status in the parser as compared to an ordinary identifier. " (PostgreSQL manual) Although the names are unreserved keywords in PostgreSQL these could be reserved keywords in other systems, which would complicate database migration. Moreover, such identifiers are often too general, i.e., do not provide enough information about the named object. Think as to whether some better name would be possible.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:17MIT License
55Perhaps too many different suffixes in the names of database objects that have the same typeOne should be consistent in naming, including in the use of suffixes. If you use sufix in the name of a database object, then it should refer to the type of the database object. Do not use different suffixes in the names of database objects that have the same type. Find types of database objects in case of which there are different suffixes in different names.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:16MIT License
56The usage of double vs singular underscores or spaces in names as separator of name componentsImprove the readability of names. Find the number of names (identifiers) of user-defined database objects that contain two or more consecutive underscores or spaces as the separator of name components vs. the number of names that contain a single underscore or space to separate name components. Try to be consistent in the usage of underscores.Sofware measureINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:16MIT License
57Identifiers that explicitly say that they carry no meaningFind identifiers that explicitly say that they carry no meaning. Such identifier is called "unnamed" or "anonymous".Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:15MIT License
58Stating the obviousFind database objects that name contains words "data" or "info". These are noise words because databases are meant for storing and manipulating data/information.Problem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:14MIT License
59Database objects of the same type and case insensitive name in the same containerFind database objects with the same type and case insensitive name in the same container. It can only happen if some of the names are case insensitive and others are case sensitive. For instance, the same schema can contain the table "Client" and clientProblem detectionINFORMATION_SCHEMA+system catalog base tables2024-12-21 17:13MIT License
60Frequency of name components of database objects"Names in software are 90 percent of what make software readable. You need to take the time to choose them wisely and keep them relevant. Names are too important to treat carelessly. Names should not cause confusion." (Robert C. Martin, Clean Code) Names should be expressive. Find, what are the most popular components of the names (identifiers) of user-defined database objects, assuming, that the separator of the components is "_".Sofware measureINFORMATION_SCHEMA+system catalog base tables2024-12-21 16:50MIT License