diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/rules/sql/update.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/rules/sql/update.sql
index 0d7ccd551..b56ace443 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/rules/sql/update.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/rules/sql/update.sql
@@ -8,7 +8,7 @@
 ALTER RULE {{ conn|qtIdent(o_data.name) }} ON {{ conn|qtIdent(o_data.schema, o_data.view) }} RENAME TO {{ conn|qtIdent(data.name) }};
 
 {% endif %}
-{% if data.event or data.do_instead is defined or data.condition is defined or data.statements is defined %}
+{% if data.event is defined or data.do_instead is defined or data.condition is defined or data.statements is defined %}
 CREATE OR REPLACE RULE {{ conn|qtIdent(rule_name) }} AS
     ON {% if data.event and data.event != o_data.event %}{{ data.event|upper }}{% else %}{{ o_data.event|upper }}{% endif %}
  TO {{ conn|qtIdent(o_data.schema, o_data.view) }}
@@ -18,16 +18,17 @@ CREATE OR REPLACE RULE {{ conn|qtIdent(rule_name) }} AS
     WHERE ({{ o_data.condition }})
 {% endif %}
     DO{% if (('do_instead' not in data and o_data.do_instead in ['true', True]) or (data.do_instead in ['true', True])) %}{{ ' INSTEAD' }}{% endif %}
-{% if data.statements and data.statements != o_data.statements and data.statements.strip() in ['', 'NOTHING']%}
+{% if data.statements is defined %}
+{% if data.statements.strip() in ['', 'NOTHING'] %}
  NOTHING;
-{% elif data.statements and data.statements != o_data.statements %}
-
-({{ data.statements.rstrip(';') }});
-{% elif data.statements is not defined and o_data.statements %}
-
-({{ o_data.statements.rstrip(';') }});
 {% else %}
+
+ ({{ data.statements.rstrip(';') }});
+ {% endif %}
+{% elif o_data.statements.strip() in ['', 'NOTHING'] %}
  NOTHING;
+{% else %}
+({{ o_data.statements.rstrip(';') }});
 {% endif %}
 
 {% endif %}
