3 -- For various updatable views based on query.expression:
4 -- add COALESCE to the insert rule so that we don't always
5 -- have to specify a value for the "negate" column.
7 INSERT INTO config.upgrade_log (version) VALUES ('0286'); -- Scott McKellar
9 CREATE OR REPLACE RULE query_expr_xbet_insert_rule AS
10 ON INSERT TO query.expr_xbet
12 INSERT INTO query.expression (
20 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
22 COALESCE(NEW.parenthesize, FALSE),
24 COALESCE(NEW.seq_no, 1),
25 COALESCE(NEW.negate, false)
28 CREATE OR REPLACE RULE query_expr_xbool_insert_rule AS
29 ON INSERT TO query.expr_xbool
31 INSERT INTO query.expression (
40 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
42 COALESCE(NEW.parenthesize, FALSE),
44 COALESCE(NEW.seq_no, 1),
46 COALESCE(NEW.negate, false)
49 CREATE OR REPLACE RULE query_expr_xcase_insert_rule AS
50 ON INSERT TO query.expr_xcase
52 INSERT INTO query.expression (
60 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
62 COALESCE(NEW.parenthesize, FALSE),
64 COALESCE(NEW.seq_no, 1),
65 COALESCE(NEW.negate, false)
68 CREATE OR REPLACE RULE query_expr_xcast_insert_rule AS
69 ON INSERT TO query.expr_xcast
71 INSERT INTO query.expression (
81 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
83 COALESCE(NEW.parenthesize, FALSE),
85 COALESCE(NEW.seq_no, 1),
88 COALESCE(NEW.negate, false)
91 CREATE OR REPLACE RULE query_expr_xcol_insert_rule AS
92 ON INSERT TO query.expr_xcol
94 INSERT INTO query.expression (
104 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
106 COALESCE(NEW.parenthesize, FALSE),
108 COALESCE(NEW.seq_no, 1),
111 COALESCE(NEW.negate, false)
114 CREATE OR REPLACE RULE query_expr_xex_insert_rule AS
115 ON INSERT TO query.expr_xex
117 INSERT INTO query.expression (
126 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
128 COALESCE(NEW.parenthesize, FALSE),
130 COALESCE(NEW.seq_no, 1),
132 COALESCE(NEW.negate, false)
135 CREATE OR REPLACE RULE query_expr_xfld_insert_rule AS
136 ON INSERT TO query.expr_xfld
138 INSERT INTO query.expression (
148 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
150 COALESCE(NEW.parenthesize, FALSE),
152 COALESCE(NEW.seq_no, 1),
155 COALESCE(NEW.negate, false)
158 CREATE OR REPLACE RULE query_expr_xfunc_insert_rule AS
159 ON INSERT TO query.expr_xfunc
161 INSERT INTO query.expression (
170 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
172 COALESCE(NEW.parenthesize, FALSE),
174 COALESCE(NEW.seq_no, 1),
176 COALESCE(NEW.negate, false)
179 CREATE OR REPLACE RULE query_expr_xin_insert_rule AS
180 ON INSERT TO query.expr_xin
182 INSERT INTO query.expression (
192 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
194 COALESCE(NEW.parenthesize, FALSE),
196 COALESCE(NEW.seq_no, 1),
199 COALESCE(NEW.negate, false)
202 CREATE OR REPLACE RULE query_expr_xisnull_insert_rule AS
203 ON INSERT TO query.expr_xisnull
205 INSERT INTO query.expression (
214 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
216 COALESCE(NEW.parenthesize, FALSE),
218 COALESCE(NEW.seq_no, 1),
220 COALESCE(NEW.negate, false)
223 CREATE OR REPLACE RULE query_expr_xnull_insert_rule AS
224 ON INSERT TO query.expr_xnull
226 INSERT INTO query.expression (
234 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
236 COALESCE(NEW.parenthesize, FALSE),
238 COALESCE(NEW.seq_no, 1),
239 COALESCE(NEW.negate, false)
242 CREATE OR REPLACE RULE query_expr_xop_insert_rule AS
243 ON INSERT TO query.expr_xop
245 INSERT INTO query.expression (
256 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
258 COALESCE(NEW.parenthesize, FALSE),
260 COALESCE(NEW.seq_no, 1),
264 COALESCE(NEW.negate, false)
267 CREATE OR REPLACE RULE query_expr_xser_insert_rule AS
268 ON INSERT TO query.expr_xser
270 INSERT INTO query.expression (
279 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
281 COALESCE(NEW.parenthesize, FALSE),
283 COALESCE(NEW.seq_no, 1),
285 COALESCE(NEW.negate, false)
288 CREATE OR REPLACE RULE query_expr_xsubq_insert_rule AS
289 ON INSERT TO query.expr_xsubq
291 INSERT INTO query.expression (
300 COALESCE(NEW.id, NEXTVAL('query.expression_id_seq'::REGCLASS)),
302 COALESCE(NEW.parenthesize, FALSE),
304 COALESCE(NEW.seq_no, 1),
306 COALESCE(NEW.negate, false)