1997-04-27 19:40:13 +02:00
|
|
|
--
|
2000-01-06 07:41:55 +01:00
|
|
|
-- ALTER_TABLE
|
1997-04-27 19:40:13 +02:00
|
|
|
-- add attribute
|
|
|
|
--
|
2000-01-05 18:32:29 +01:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
CREATE TABLE tmp (initial int4);
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN a int4;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN b name;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN c text;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN d float8;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN e float4;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN f int2;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN g polygon;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN h abstime;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN i char;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN j abstime[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN k dt;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN l tid;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN m xid;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
2000-01-11 06:56:33 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN n oidvector;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
--ALTER TABLE tmp ADD COLUMN o lock;
|
|
|
|
ALTER TABLE tmp ADD COLUMN p smgr;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN q point;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN r lseg;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN s path;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN t box;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN u tinterval;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN v datetime;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN w timespan;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN x float8[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN y float4[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN z int2[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
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-27 19:40:13 +02:00
|
|
|
v, w, x, y, z)
|
1998-04-26 06:12:15 +02:00
|
|
|
VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)',
|
1997-04-27 19:40:13 +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}');
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
SELECT * FROM tmp;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
DROP TABLE tmp;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
|
|
|
-- the wolf bug - schema mods caused inconsistent row descriptors
|
1999-02-02 04:45:56 +01:00
|
|
|
CREATE TABLE tmp (
|
1997-04-27 19:40:13 +02:00
|
|
|
initial int4
|
1997-12-01 03:46:13 +01:00
|
|
|
);
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN a int4;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN b name;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN c text;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN d float8;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN e float4;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN f int2;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN g polygon;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN h abstime;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN i char;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN j abstime[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN k dt;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN l tid;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN m xid;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
2000-01-11 06:56:33 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN n oidvector;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
--ALTER TABLE tmp ADD COLUMN o lock;
|
|
|
|
ALTER TABLE tmp ADD COLUMN p smgr;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN q point;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN r lseg;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN s path;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN t box;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN u tinterval;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN v datetime;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN w timespan;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN x float8[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN y float4[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
ALTER TABLE tmp ADD COLUMN z int2[];
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
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-27 19:40:13 +02:00
|
|
|
v, w, x, y, z)
|
1998-04-26 06:12:15 +02:00
|
|
|
VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)',
|
1997-04-27 19:40:13 +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}');
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
SELECT * FROM tmp;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
1999-02-02 04:45:56 +01:00
|
|
|
DROP TABLE tmp;
|
1997-04-27 19:40:13 +02:00
|
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
-- rename -
|
2000-02-15 21:49:31 +01:00
|
|
|
-- should preserve indices, which we can check by seeing if a SELECT
|
|
|
|
-- chooses an indexscan; however, in the absence of vacuum statistics
|
|
|
|
-- it might not. Therefore, vacuum first.
|
1997-04-27 19:40:13 +02:00
|
|
|
--
|
2000-02-15 21:49:31 +01:00
|
|
|
VACUUM ANALYZE tenk1;
|
|
|
|
|
1997-04-27 19:40:13 +02:00
|
|
|
ALTER TABLE tenk1 RENAME TO ten_k;
|
|
|
|
|
|
|
|
-- 20 values, sorted
|
|
|
|
SELECT unique1 FROM ten_k WHERE unique1 < 20;
|
|
|
|
|
|
|
|
-- 20 values, sorted
|
|
|
|
SELECT unique2 FROM ten_k WHERE unique2 < 20;
|
|
|
|
|
|
|
|
-- 100 values, sorted
|
|
|
|
SELECT hundred FROM ten_k WHERE hundred = 50;
|
|
|
|
|
|
|
|
ALTER TABLE ten_k RENAME TO tenk1;
|
|
|
|
|
|
|
|
-- 5 values, sorted
|
|
|
|
SELECT unique1 FROM tenk1 WHERE unique1 < 5;
|
|
|
|
|