diff options
Diffstat (limited to 'src/test/regress/input/constraints.source')
-rw-r--r-- | src/test/regress/input/constraints.source | 46 |
1 files changed, 21 insertions, 25 deletions
diff --git a/src/test/regress/input/constraints.source b/src/test/regress/input/constraints.source index b2fea4ca43d..88f6c263379 100644 --- a/src/test/regress/input/constraints.source +++ b/src/test/regress/input/constraints.source @@ -14,6 +14,7 @@ INSERT INTO DEFAULT_TBL VALUES (1, 'thomas', 57.0613); INSERT INTO DEFAULT_TBL VALUES (1, 'bruce'); INSERT INTO DEFAULT_TBL (i, f) VALUES (2, 987.654); INSERT INTO DEFAULT_TBL (x) VALUES ('tgl'); +INSERT INTO DEFAULT_TBL VALUES (3, null, 1.0); SELECT '' AS four, * FROM DEFAULT_TBL; @@ -66,28 +67,30 @@ CREATE SEQUENCE INSERT_SEQ; CREATE TABLE INSERT_TBL (x INT DEFAULT nextval('insert_seq'), y TEXT DEFAULT '-NULL-', z INT DEFAULT -1 * currval('insert_seq') ) -CONSTRAINT INSERT_CON CHECK (x > 3 AND y <> 'check failed' AND x < 8), +CONSTRAINT INSERT_CON CHECK (x >= 3 AND y <> 'check failed' AND x < 8), CHECK x + z = 0; INSERT INTO INSERT_TBL VALUES (null, null, null); -INSERT INTO INSERT_TBL VALUES (null, null, -2); +INSERT INTO INSERT_TBL(x,z) VALUES (2, -2); SELECT * FROM INSERT_TBL; SELECT nextval('insert_seq'); -INSERT INTO INSERT_TBL VALUES (null, null, null); -INSERT INTO INSERT_TBL VALUES (1, null, -2); -INSERT INTO INSERT_TBL VALUES (7, null, -7); +INSERT INTO INSERT_TBL(y) VALUES ('Y'); +INSERT INTO INSERT_TBL(y) VALUES ('Y'); +INSERT INTO INSERT_TBL(x,z) VALUES (1, -2); +INSERT INTO INSERT_TBL(z,x) VALUES (-7, 7); INSERT INTO INSERT_TBL VALUES (5, 'check failed', -5); INSERT INTO INSERT_TBL VALUES (7, '!check failed', -7); -INSERT INTO INSERT_TBL VALUES (null, null, null); +INSERT INTO INSERT_TBL(y) VALUES ('-!NULL-'); SELECT * FROM INSERT_TBL; -INSERT INTO INSERT_TBL VALUES (null, 'check failed', 5); -INSERT INTO INSERT_TBL VALUES (5, 'check failed', null); -INSERT INTO INSERT_TBL VALUES (5, '!check failed', null); -INSERT INTO INSERT_TBL VALUES (null, null, null); +INSERT INTO INSERT_TBL(y,z) VALUES ('check failed', 4); +INSERT INTO INSERT_TBL(x,y) VALUES (5, 'check failed'); +INSERT INTO INSERT_TBL(x,y) VALUES (5, '!check failed'); +INSERT INTO INSERT_TBL(y) VALUES ('-!NULL-'); SELECT * FROM INSERT_TBL; -INSERT INTO INSERT_TBL VALUES (null, null, null); +SELECT nextval('insert_seq'); +INSERT INTO INSERT_TBL(y) VALUES ('Y'); SELECT currval('insert_seq'); -- @@ -99,13 +102,14 @@ DROP SEQUENCE INSERT_SEQ; CREATE SEQUENCE INSERT_SEQ START 4; CREATE TABLE TEMP (xd INT, yd TEXT, zd INT); -SELECT nextval('insert_seq'); -INSERT INTO TEMP VALUES (null, null, null); +INSERT INTO TEMP VALUES (null, 'Y', null); INSERT INTO TEMP VALUES (5, '!check failed', null); INSERT INTO TEMP VALUES (null, 'try again', null); -INSERT INTO INSERT_TBL SELECT * FROM TEMP; +INSERT INTO INSERT_TBL(y) select yd from TEMP; SELECT * FROM INSERT_TBL; INSERT INTO INSERT_TBL SELECT * FROM TEMP WHERE yd = 'try again'; +INSERT INTO INSERT_TBL(y,z) SELECT yd, -7 FROM TEMP WHERE yd = 'try again'; +INSERT INTO INSERT_TBL(y,z) SELECT yd, -8 FROM TEMP WHERE yd = 'try again'; SELECT * FROM INSERT_TBL; DROP TABLE TEMP; @@ -115,28 +119,20 @@ DROP TABLE TEMP; -- UPDATE INSERT_TBL SET x = NULL WHERE x = 6; -SELECT currval('insert_seq'); -SELECT * FROM INSERT_TBL; - UPDATE INSERT_TBL SET x = 6 WHERE x = 6; -SELECT * FROM INSERT_TBL; - UPDATE INSERT_TBL SET x = -z, z = -x; +UPDATE INSERT_TBL SET x = z, z = x; SELECT * FROM INSERT_TBL; -- -- Check constraints on COPY FROM -- -CREATE SEQUENCE COPY_SEQ START 4; -CREATE TABLE COPY_TBL (x INT DEFAULT nextval('copy_seq'), - y TEXT DEFAULT '-NULL-', z INT DEFAULT -1 * currval('copy_seq') ) - CONSTRAINT COPY_CON CHECK (x > 3 AND y <> 'check failed' AND x < 7 ), - CHECK x + z = 0; +CREATE TABLE COPY_TBL (x INT, y TEXT, z INT) + CONSTRAINT COPY_CON CHECK (x > 3 AND y <> 'check failed' AND x < 7 ); COPY COPY_TBL FROM '_OBJWD_/data/constro.data'; SELECT * FROM COPY_TBL; COPY COPY_TBL FROM '_OBJWD_/data/constrf.data'; SELECT * FROM COPY_TBL; -select nextval('copy_seq') - 1 as currval; |