| AddParenthesesInNestedExpression | Add parentheses in nested expression |
| CharacterDatatypeUsage | Use VARCHAR2 instead of CHAR and VARCHAR |
| CollapsibleIfStatements | Collapsible "if" statements should be merged |
| ColumnsShouldHaveTableName | The columns in a SELECT should be prefixed with table name |
| CommitRollback | Avoid COMMIT/ROLLBACK calls in database objects |
| ComparisonWithBoolean | Avoid superfluous comparation against boolean literals |
| ComparisonWithNull | Do not compare values against the NULL literal or an empty string |
| ConcatenationWithNull | Unnecessary concatenation with NULL value |
| CursorBodyInPackageSpec | Do not declare cursor bodies in a package specification |
| DbmsOutputPut | Avoid direct calls to DBMS_OUTPUT procedures |
| DeadCode | Dead code should be removed |
| DeclareSectionWithoutDeclarations | Do not add the DECLARE keyword if the block doesn't have any declaration |
| DisabledTest | Tests should not be disabled |
| DuplicateConditionIfElsif | Related "if/elsif" statements should not have the same condition |
| DuplicatedValueInIn | Duplicated value in an IN condition |
| EmptyBlock | Empty blocks should be removed |
| EmptyStringAssignment | Avoid using empty strings to represent NULL |
| ExplicitInParameter | Parameter mode should be explicitly declared |
| FunctionWithOutParameter | Avoid functions with OUT parameters |
| IdenticalExpression | Identical expressions should not be used on both sides of an operator |
| IfWithExit | Use EXIT WHEN instead of an IF statement to exit from a loop |
| InequalityUsage | Only "<>" should be used to test inequality |
| InsertWithoutColumns | Always specify the columns in an INSERT statement |
| InvalidReferenceToObject | Invalid reference to Oracle Forms object |
| NotASelectedExpression | ORDER BY items must appear in the select list if SELECT DISTINCT is specified |
| NotFound | Use cursor%NOTFOUND instead of NOT cursor%FOUND |
| NvlWithNullParameter | Do not pass a NULL literal or an empty string to NVL |
| ParsingError | Parser failure |
| QueryWithoutExceptionHandling | Avoid queries without an exception handling block |
| RaiseStandardException | Avoid raising standard exceptions |
| RedundantExpectation | Test expectations should not be redundant |
| ReturnOfBooleanExpression | Return of boolean expressions should not be wrapped into an "if-then-else" statement |
| SameBranch | Branches in the same conditional structure should not have exactly the same implementation |
| SameCondition | Identical conditions should not be duplicated |
| SelectAllColumns | SELECT * should not be used |
| SelectWithRownumAndOrderBy | A SELECT cannot have a comparison with ROWNUM and an ORDER BY at the same level |
| ToCharInOrderBy | Avoid TO_CHAR in an ORDER BY clause |
| ToDateWithoutFormat | TO_DATE without date format |
| TooManyRowsHandler | Avoid masking the TOO_MANY_ROWS exception |
| UnhandledUserDefinedException | User defined exceptions should be handled |
| UnnecessaryAliasInQuery | Unnecessary alias for table reference |
| UnnecessaryElse | Unnecessary ELSE clause |
| UnnecessaryLike | Do not use LIKE conditions without wildcards |
| UnnecessaryNullStatement | Unnecessary NULL statement |
| UnusedCursor | Unused cursors should be removed |
| UnusedParameter | Unused parameters should be removed |
| UnusedVariable | Unused local variables should be removed |
| UselessParenthesis | Useless parentheses around expressions should be removed to prevent any misunderstanding |
| VariableHiding | Do not redeclare variables in inner scope |
| VariableInCount | Don't pass variables to COUNT function |
| VariableInitializationWithFunctionCall | Avoid initializing variables using functions in the declaration section |
| VariableInitializationWithNull | Variables and RECORD fields do not need to be initialized with NULL |
| VariableName | Variables should comply with a naming convention |
| XPath | Track breaches of an XPath rule |