Query goal: | Use a right predicate in trigger condition in order to ensure that the trigger executes always when it has to but not more often. IS DISTINCT FROM treats NULL as if it was a known value, rather than unknown. It would be relevant if a column that is referenced in the action condition is optional, i.e., permits NULLs. |
Query type: | Problem detection (Each row in the result could represent a flaw in the design) |
Query reliability: | Medium (Medium number of false-positive results) |
Query license: | MIT License |
Fixing suggestion: | Use IS DISTINCT FROM if you compare row variables. |
Data source: | INFORMATION_SCHEMA only |
SQL query: | Click on query to copy it
SELECT trigger_schema, trigger_name, action_timing, action_orientation, event_manipulation, event_object_schema AS table_schema, event_object_table AS table_name, action_condition FROM INFORMATION_SCHEMA.triggers WHERE action_condition ~*'\*.*(<>|!=).*\*' ORDER BY trigger_schema, trigger_name; |
Collection name | Collection description |
---|---|
Find problems automatically | Queries, that results point to problems in the database. Each query in the collection produces an initial assessment. However, a human reviewer has the final say as to whether there is a problem or not . |
Category name | Category description |
---|---|
Triggers and rules | Queries of this category provide information about triggers and rules in a database. |
Reference |
---|
https://wiki.postgresql.org/wiki/Is_distinct_from |