mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-10-02 19:36:52 +02:00
b153c09209
There are still some weak spots around JOIN USING and relation alias lists, but most errors reported within backend/parser/ now have locations.
123 lines
3.6 KiB
Plaintext
123 lines
3.6 KiB
Plaintext
--
|
|
-- OID
|
|
--
|
|
CREATE TABLE OID_TBL(f1 oid);
|
|
INSERT INTO OID_TBL(f1) VALUES ('1234');
|
|
INSERT INTO OID_TBL(f1) VALUES ('1235');
|
|
INSERT INTO OID_TBL(f1) VALUES ('987');
|
|
INSERT INTO OID_TBL(f1) VALUES ('-1040');
|
|
INSERT INTO OID_TBL(f1) VALUES ('99999999');
|
|
INSERT INTO OID_TBL(f1) VALUES ('5 ');
|
|
INSERT INTO OID_TBL(f1) VALUES (' 10 ');
|
|
-- leading/trailing hard tab is also allowed
|
|
INSERT INTO OID_TBL(f1) VALUES (' 15 ');
|
|
-- bad inputs
|
|
INSERT INTO OID_TBL(f1) VALUES ('');
|
|
ERROR: invalid input syntax for type oid: ""
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES (' ');
|
|
ERROR: invalid input syntax for type oid: " "
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES (' ');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES ('asdfasd');
|
|
ERROR: invalid input syntax for type oid: "asdfasd"
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('asdfasd');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES ('99asdfasd');
|
|
ERROR: invalid input syntax for type oid: "99asdfasd"
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('99asdfasd');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES ('5 d');
|
|
ERROR: invalid input syntax for type oid: "5 d"
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('5 d');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES (' 5d');
|
|
ERROR: invalid input syntax for type oid: " 5d"
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES (' 5d');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES ('5 5');
|
|
ERROR: invalid input syntax for type oid: "5 5"
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('5 5');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES (' - 500');
|
|
ERROR: invalid input syntax for type oid: " - 500"
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES (' - 500');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES ('32958209582039852935');
|
|
ERROR: value "32958209582039852935" is out of range for type oid
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('32958209582039852935');
|
|
^
|
|
INSERT INTO OID_TBL(f1) VALUES ('-23582358720398502385');
|
|
ERROR: value "-23582358720398502385" is out of range for type oid
|
|
LINE 1: INSERT INTO OID_TBL(f1) VALUES ('-23582358720398502385');
|
|
^
|
|
SELECT '' AS six, * FROM OID_TBL;
|
|
six | f1
|
|
-----+------------
|
|
| 1234
|
|
| 1235
|
|
| 987
|
|
| 4294966256
|
|
| 99999999
|
|
| 5
|
|
| 10
|
|
| 15
|
|
(8 rows)
|
|
|
|
SELECT '' AS one, o.* FROM OID_TBL o WHERE o.f1 = 1234;
|
|
one | f1
|
|
-----+------
|
|
| 1234
|
|
(1 row)
|
|
|
|
SELECT '' AS five, o.* FROM OID_TBL o WHERE o.f1 <> '1234';
|
|
five | f1
|
|
------+------------
|
|
| 1235
|
|
| 987
|
|
| 4294966256
|
|
| 99999999
|
|
| 5
|
|
| 10
|
|
| 15
|
|
(7 rows)
|
|
|
|
SELECT '' AS three, o.* FROM OID_TBL o WHERE o.f1 <= '1234';
|
|
three | f1
|
|
-------+------
|
|
| 1234
|
|
| 987
|
|
| 5
|
|
| 10
|
|
| 15
|
|
(5 rows)
|
|
|
|
SELECT '' AS two, o.* FROM OID_TBL o WHERE o.f1 < '1234';
|
|
two | f1
|
|
-----+-----
|
|
| 987
|
|
| 5
|
|
| 10
|
|
| 15
|
|
(4 rows)
|
|
|
|
SELECT '' AS four, o.* FROM OID_TBL o WHERE o.f1 >= '1234';
|
|
four | f1
|
|
------+------------
|
|
| 1234
|
|
| 1235
|
|
| 4294966256
|
|
| 99999999
|
|
(4 rows)
|
|
|
|
SELECT '' AS three, o.* FROM OID_TBL o WHERE o.f1 > '1234';
|
|
three | f1
|
|
-------+------------
|
|
| 1235
|
|
| 4294966256
|
|
| 99999999
|
|
(3 rows)
|
|
|
|
DROP TABLE OID_TBL;
|