--
-- 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;
