File: rename_column.sql

package info (click to toggle)
wal2json 2.6-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 8,672 kB
  • sloc: ansic: 2,524; sql: 1,136; makefile: 27; sh: 6
file content (69 lines) | stat: -rw-r--r-- 2,630 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
\set VERBOSITY terse

-- predictability
SET synchronous_commit = on;
SET extra_float_digits = 0;

CREATE TABLE w2j_rename_pk (
a	int,
b	timestamp,
c	text,
d	boolean,
e	numeric(5,3),
PRIMARY KEY(a, d)
);

CREATE TABLE w2j_rename_ri (
a	int NOT NULL,
b	timestamp,
c	text,
d	boolean NOT NULL,
e	numeric(5,3)
);
CREATE UNIQUE INDEX w2j_rename_ri_idx ON w2j_rename_ri (a, d);
ALTER TABLE w2j_rename_ri REPLICA IDENTITY USING INDEX w2j_rename_ri_idx;

SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'wal2json');

INSERT INTO w2j_rename_pk (a, b, c, d, e) VALUES(123, '2020-04-26 16:23:59', 'Melanosuchus Niger', true, 4.56);
UPDATE w2j_rename_pk SET e = 8.76 WHERE a = 123;

ALTER TABLE w2j_rename_pk RENAME COLUMN d TO f;

INSERT INTO w2j_rename_pk (a, b, c, f, e) VALUES(456, '2020-12-07 15:56:59', 'Panthera Onca', false, 4.44);
UPDATE w2j_rename_pk SET e = 2.718 WHERE a = 456;

BEGIN;
INSERT INTO w2j_rename_pk (a, b, c, f, e) VALUES(789, '2021-04-04 10:33:04', 'Chrysocyon brachyurus', true, 20.30);
ALTER TABLE w2j_rename_pk RENAME COLUMN a TO g;
INSERT INTO w2j_rename_pk (g, b, c, f, e) VALUES(790, '2020-04-04 10:34:55', 'Myrmecophaga tridactyla', false, 1.8);
UPDATE w2j_rename_pk SET e = 3.1415 WHERE g = 456;
COMMIT;

INSERT INTO w2j_rename_ri (a, b, c, d, e) VALUES(123, '2020-04-26 16:23:59', 'Melanosuchus Niger', true, 4.56);
UPDATE w2j_rename_ri SET e = 8.76 WHERE a = 123;

ALTER TABLE w2j_rename_ri RENAME COLUMN d TO f;

INSERT INTO w2j_rename_ri (a, b, c, f, e) VALUES(456, '2020-12-07 15:56:59', 'Panthera Onca', false, 4.44);
UPDATE w2j_rename_ri SET e = 2.718 WHERE a = 456;

BEGIN;
INSERT INTO w2j_rename_ri (a, b, c, f, e) VALUES(789, '2021-04-04 10:33:04', 'Chrysocyon brachyurus', true, 20.30);
ALTER TABLE w2j_rename_ri RENAME COLUMN a TO g;
INSERT INTO w2j_rename_ri (g, b, c, f, e) VALUES(790, '2020-04-04 10:34:55', 'Myrmecophaga tridactyla', false, 1.8);
UPDATE w2j_rename_ri SET e = 3.1415 WHERE g = 456;
COMMIT;

ALTER TABLE w2j_rename_pk REPLICA IDENTITY FULL;
INSERT INTO w2j_rename_pk (g, b, c, f, e) VALUES(890, '2023-10-31 03:06:00', 'Crypturellus parvirostris', true, 8.90);
UPDATE w2j_rename_pk SET e = 8.91 WHERE g = 890;
DELETE FROM w2j_rename_pk WHERE g = 890;


SELECT data FROM pg_logical_slot_peek_changes('regression_slot', NULL, NULL, 'format-version', '1', 'pretty-print', '1', 'include-typmod', '0', 'include-pk', '1');
SELECT data FROM pg_logical_slot_peek_changes('regression_slot', NULL, NULL, 'format-version', '2', 'include-pk', '1');
SELECT 'stop' FROM pg_drop_replication_slot('regression_slot');

DROP TABLE w2j_rename_pk;
DROP TABLE w2j_rename_ri;