2000-01-09 04:48:39 +01:00
|
|
|
--
|
|
|
|
-- ALTER_TABLE
|
|
|
|
-- add attribute
|
|
|
|
--
|
|
|
|
CREATE TABLE tmp (initial int4);
|
|
|
|
ALTER TABLE tmp ADD COLUMN a int4;
|
|
|
|
ALTER TABLE tmp ADD COLUMN b name;
|
|
|
|
ALTER TABLE tmp ADD COLUMN c text;
|
|
|
|
ALTER TABLE tmp ADD COLUMN d float8;
|
|
|
|
ALTER TABLE tmp ADD COLUMN e float4;
|
|
|
|
ALTER TABLE tmp ADD COLUMN f int2;
|
|
|
|
ALTER TABLE tmp ADD COLUMN g polygon;
|
|
|
|
ALTER TABLE tmp ADD COLUMN h abstime;
|
|
|
|
ALTER TABLE tmp ADD COLUMN i char;
|
|
|
|
ALTER TABLE tmp ADD COLUMN j abstime[];
|
|
|
|
ALTER TABLE tmp ADD COLUMN k dt;
|
1999-02-23 08:31:02 +01:00
|
|
|
ERROR: Unable to locate type name 'dt' in catalog
|
2000-01-09 04:48:39 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN l tid;
|
|
|
|
ALTER TABLE tmp ADD COLUMN m xid;
|
|
|
|
ALTER TABLE tmp ADD COLUMN n oid8;
|
|
|
|
--ALTER TABLE tmp ADD COLUMN o lock;
|
|
|
|
ALTER TABLE tmp ADD COLUMN p smgr;
|
|
|
|
ALTER TABLE tmp ADD COLUMN q point;
|
|
|
|
ALTER TABLE tmp ADD COLUMN r lseg;
|
|
|
|
ALTER TABLE tmp ADD COLUMN s path;
|
|
|
|
ALTER TABLE tmp ADD COLUMN t box;
|
|
|
|
ALTER TABLE tmp ADD COLUMN u tinterval;
|
|
|
|
ALTER TABLE tmp ADD COLUMN v datetime;
|
|
|
|
ALTER TABLE tmp ADD COLUMN w timespan;
|
|
|
|
ALTER TABLE tmp ADD COLUMN x float8[];
|
|
|
|
ALTER TABLE tmp ADD COLUMN y float4[];
|
|
|
|
ALTER TABLE tmp ADD COLUMN z int2[];
|
|
|
|
INSERT INTO tmp (a, b, c, d, e, f, g, h, i, j, k, l, m, n, p, q, r, s, t, u,
|
1997-04-29 16:23:51 +02:00
|
|
|
v, w, x, y, z)
|
2000-01-09 04:48:39 +01:00
|
|
|
VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)',
|
|
|
|
'Mon May 1 00:30:30 1995', 'c', '{Mon May 1 00:30:30 1995, Monday Aug 24 14:43:07 1992, epoch}',
|
1997-04-29 16:23:51 +02:00
|
|
|
314159, '(1,1)', 512,
|
|
|
|
'1 2 3 4 5 6 7 8', 'magnetic disk', '(1.1,1.1)', '(4.1,4.1,3.1,3.1)',
|
|
|
|
'(0,2,4.1,4.1,3.1,3.1)', '(4.1,4.1,3.1,3.1)', '["current" "infinity"]',
|
1998-04-26 06:12:15 +02:00
|
|
|
'1/3', '1,name', '{1.0,2.0,3.0,4.0}', '{1.0,2.0,3.0,4.0}', '{1,2,3,4}');
|
1999-02-23 08:31:02 +01:00
|
|
|
ERROR: Relation 'tmp' does not have attribute 'k'
|
2000-01-09 04:48:39 +01:00
|
|
|
SELECT * FROM tmp;
|
|
|
|
initial | a | b | c | d | e | f | g | h | i | j | l | m | n | p | q | r | s | t | u | v | w | x | y | z
|
|
|
|
---------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---
|
1997-04-29 16:23:51 +02:00
|
|
|
(0 rows)
|
|
|
|
|
2000-01-09 04:48:39 +01:00
|
|
|
DROP TABLE tmp;
|
|
|
|
-- the wolf bug - schema mods caused inconsistent row descriptors
|
|
|
|
CREATE TABLE tmp (
|
1997-04-29 16:23:51 +02:00
|
|
|
initial int4
|
1997-12-01 03:44:53 +01:00
|
|
|
);
|
2000-01-09 04:48:39 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN a int4;
|
|
|
|
ALTER TABLE tmp ADD COLUMN b name;
|
|
|
|
ALTER TABLE tmp ADD COLUMN c text;
|
|
|
|
ALTER TABLE tmp ADD COLUMN d float8;
|
|
|
|
ALTER TABLE tmp ADD COLUMN e float4;
|
|
|
|
ALTER TABLE tmp ADD COLUMN f int2;
|
|
|
|
ALTER TABLE tmp ADD COLUMN g polygon;
|
|
|
|
ALTER TABLE tmp ADD COLUMN h abstime;
|
|
|
|
ALTER TABLE tmp ADD COLUMN i char;
|
|
|
|
ALTER TABLE tmp ADD COLUMN j abstime[];
|
|
|
|
ALTER TABLE tmp ADD COLUMN k dt;
|
1999-02-23 08:31:02 +01:00
|
|
|
ERROR: Unable to locate type name 'dt' in catalog
|
2000-01-09 04:48:39 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN l tid;
|
|
|
|
ALTER TABLE tmp ADD COLUMN m xid;
|
|
|
|
ALTER TABLE tmp ADD COLUMN n oid8;
|
|
|
|
--ALTER TABLE tmp ADD COLUMN o lock;
|
|
|
|
ALTER TABLE tmp ADD COLUMN p smgr;
|
|
|
|
ALTER TABLE tmp ADD COLUMN q point;
|
|
|
|
ALTER TABLE tmp ADD COLUMN r lseg;
|
|
|
|
ALTER TABLE tmp ADD COLUMN s path;
|
|
|
|
ALTER TABLE tmp ADD COLUMN t box;
|
|
|
|
ALTER TABLE tmp ADD COLUMN u tinterval;
|
|
|
|
ALTER TABLE tmp ADD COLUMN v datetime;
|
|
|
|
ALTER TABLE tmp ADD COLUMN w timespan;
|
|
|
|
ALTER TABLE tmp ADD COLUMN x float8[];
|
|
|
|
ALTER TABLE tmp ADD COLUMN y float4[];
|
|
|
|
ALTER TABLE tmp ADD COLUMN z int2[];
|
|
|
|
INSERT INTO tmp (a, b, c, d, e, f, g, h, i, j, k, l, m, n, p, q, r, s, t, u,
|
1997-04-29 16:23:51 +02:00
|
|
|
v, w, x, y, z)
|
2000-01-09 04:48:39 +01:00
|
|
|
VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)',
|
1997-04-29 16:23:51 +02:00
|
|
|
'Mon May 1 00:30:30 1995', 'c', '{Mon May 1 00:30:30 1995, Monday Aug 24 14:43:07 1992, epoch}',
|
|
|
|
314159, '(1,1)', 512,
|
|
|
|
'1 2 3 4 5 6 7 8', 'magnetic disk', '(1.1,1.1)', '(4.1,4.1,3.1,3.1)',
|
|
|
|
'(0,2,4.1,4.1,3.1,3.1)', '(4.1,4.1,3.1,3.1)', '["current" "infinity"]',
|
1998-04-26 06:12:15 +02:00
|
|
|
'1/3', '1,name', '{1.0,2.0,3.0,4.0}', '{1.0,2.0,3.0,4.0}', '{1,2,3,4}');
|
1999-02-23 08:31:02 +01:00
|
|
|
ERROR: Relation 'tmp' does not have attribute 'k'
|
2000-01-09 04:48:39 +01:00
|
|
|
SELECT * FROM tmp;
|
|
|
|
initial | a | b | c | d | e | f | g | h | i | j | l | m | n | p | q | r | s | t | u | v | w | x | y | z
|
|
|
|
---------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---
|
1997-04-29 16:23:51 +02:00
|
|
|
(0 rows)
|
|
|
|
|
2000-01-09 04:48:39 +01:00
|
|
|
DROP TABLE tmp;
|
|
|
|
--
|
|
|
|
-- rename -
|
|
|
|
-- should preserve indices
|
|
|
|
--
|
|
|
|
ALTER TABLE tenk1 RENAME TO ten_k;
|
|
|
|
-- 20 values, sorted
|
|
|
|
SELECT unique1 FROM ten_k WHERE unique1 < 20;
|
|
|
|
unique1
|
|
|
|
---------
|
|
|
|
0
|
|
|
|
1
|
|
|
|
2
|
|
|
|
3
|
|
|
|
4
|
|
|
|
5
|
|
|
|
6
|
|
|
|
7
|
|
|
|
8
|
|
|
|
9
|
|
|
|
10
|
|
|
|
11
|
|
|
|
12
|
|
|
|
13
|
|
|
|
14
|
|
|
|
15
|
|
|
|
16
|
|
|
|
17
|
|
|
|
18
|
|
|
|
19
|
1997-04-29 16:23:51 +02:00
|
|
|
(20 rows)
|
|
|
|
|
2000-01-09 04:48:39 +01:00
|
|
|
-- 20 values, sorted
|
|
|
|
SELECT unique2 FROM ten_k WHERE unique2 < 20;
|
|
|
|
unique2
|
|
|
|
---------
|
|
|
|
0
|
|
|
|
1
|
|
|
|
2
|
|
|
|
3
|
|
|
|
4
|
|
|
|
5
|
|
|
|
6
|
|
|
|
7
|
|
|
|
8
|
|
|
|
9
|
|
|
|
10
|
|
|
|
11
|
|
|
|
12
|
|
|
|
13
|
|
|
|
14
|
|
|
|
15
|
|
|
|
16
|
|
|
|
17
|
|
|
|
18
|
|
|
|
19
|
1997-04-29 16:23:51 +02:00
|
|
|
(20 rows)
|
|
|
|
|
2000-01-09 04:48:39 +01:00
|
|
|
-- 100 values, sorted
|
|
|
|
SELECT hundred FROM ten_k WHERE hundred = 50;
|
|
|
|
hundred
|
|
|
|
---------
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
|
|
|
50
|
1997-04-29 16:23:51 +02:00
|
|
|
(100 rows)
|
|
|
|
|
2000-01-09 04:48:39 +01:00
|
|
|
ALTER TABLE ten_k RENAME TO tenk1;
|
|
|
|
-- 5 values, sorted
|
|
|
|
SELECT unique1 FROM tenk1 WHERE unique1 < 5;
|
|
|
|
unique1
|
|
|
|
---------
|
|
|
|
0
|
|
|
|
1
|
|
|
|
2
|
|
|
|
3
|
|
|
|
4
|
1997-04-29 16:23:51 +02:00
|
|
|
(5 rows)
|
|
|
|
|