/* * PostgresqQuery object defines the needed query functions for the dbConnect PostgreSQL driver * Copyright (C) 2003 Johnathan Ingram, jingram@rogueware.org * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US * */ #ifndef __PGSQL_OID_TYPES_H__ #define __PGSQL_OID_TYPES_H__ /* Redefine the PostgreSQL defined OID into c++ defines. * * The defines are generated with the PostgreSQL query: * SELECT rpad('#define PG_TYPE_' || upper(typname), 41) || oid FROM pg_type ORDER BY oid * * This file allows for DbConnect to manipulate the OID's using description defines. * The query should be run against all new PostgreSQL releases and this file regenerated before compiling the driver. * * I do believe the __ represent array types :/ */ #define PG_TYPE_BOOL 16 #define PG_TYPE_BYTEA 17 #define PG_TYPE_CHAR 18 #define PG_TYPE_NAME 19 #define PG_TYPE_INT8 20 #define PG_TYPE_INT2 21 #define PG_TYPE_INT2VECTOR 22 #define PG_TYPE_INT4 23 #define PG_TYPE_REGPROC 24 #define PG_TYPE_TEXT 25 #define PG_TYPE_OID 26 #define PG_TYPE_TID 27 #define PG_TYPE_XID 28 #define PG_TYPE_CID 29 #define PG_TYPE_OIDVECTOR 30 #define PG_TYPE_SET 32 #define PG_TYPE_PG_TYPE 71 #define PG_TYPE_PG_ATTRIBUTE 75 #define PG_TYPE_PG_PROC 81 #define PG_TYPE_PG_CLASS 83 #define PG_TYPE_PG_SHADOW 86 #define PG_TYPE_PG_GROUP 87 #define PG_TYPE_PG_DATABASE 88 #define PG_TYPE_SMGR 210 #define PG_TYPE_POINT 600 #define PG_TYPE_LSEG 601 #define PG_TYPE_PATH 602 #define PG_TYPE_BOX 603 #define PG_TYPE_POLYGON 604 #define PG_TYPE_LINE 628 #define PG_TYPE__LINE 629 #define PG_TYPE_CIDR 650 #define PG_TYPE__CIDR 651 #define PG_TYPE_FLOAT4 700 #define PG_TYPE_FLOAT8 701 #define PG_TYPE_ABSTIME 702 #define PG_TYPE_RELTIME 703 #define PG_TYPE_TINTERVAL 704 #define PG_TYPE_UNKNOWN 705 #define PG_TYPE_CIRCLE 718 #define PG_TYPE__CIRCLE 719 #define PG_TYPE_MONEY 790 #define PG_TYPE__MONEY 791 #define PG_TYPE_MACADDR 829 #define PG_TYPE_INET 869 #define PG_TYPE__BOOL 1000 #define PG_TYPE__BYTEA 1001 #define PG_TYPE__CHAR 1002 #define PG_TYPE__NAME 1003 #define PG_TYPE__INT2 1005 #define PG_TYPE__INT2VECTOR 1006 #define PG_TYPE__INT4 1007 #define PG_TYPE__REGPROC 1008 #define PG_TYPE__TEXT 1009 #define PG_TYPE__TID 1010 #define PG_TYPE__XID 1011 #define PG_TYPE__CID 1012 #define PG_TYPE__OIDVECTOR 1013 #define PG_TYPE__BPCHAR 1014 #define PG_TYPE__VARCHAR 1015 #define PG_TYPE__INT8 1016 #define PG_TYPE__POINT 1017 #define PG_TYPE__LSEG 1018 #define PG_TYPE__PATH 1019 #define PG_TYPE__BOX 1020 #define PG_TYPE__FLOAT4 1021 #define PG_TYPE__FLOAT8 1022 #define PG_TYPE__ABSTIME 1023 #define PG_TYPE__RELTIME 1024 #define PG_TYPE__TINTERVAL 1025 #define PG_TYPE__POLYGON 1027 #define PG_TYPE__OID 1028 #define PG_TYPE_ACLITEM 1033 #define PG_TYPE__ACLITEM 1034 #define PG_TYPE__MACADDR 1040 #define PG_TYPE__INET 1041 #define PG_TYPE_BPCHAR 1042 #define PG_TYPE_VARCHAR 1043 #define PG_TYPE_DATE 1082 #define PG_TYPE_TIME 1083 #define PG_TYPE_TIMESTAMP 1114 #define PG_TYPE__TIMESTAMP 1115 #define PG_TYPE__DATE 1182 #define PG_TYPE__TIME 1183 #define PG_TYPE_TIMESTAMPTZ 1184 #define PG_TYPE__TIMESTAMPTZ 1185 #define PG_TYPE_INTERVAL 1186 #define PG_TYPE__INTERVAL 1187 #define PG_TYPE__NUMERIC 1231 #define PG_TYPE_TIMETZ 1266 #define PG_TYPE__TIMETZ 1270 #define PG_TYPE_BIT 1560 #define PG_TYPE__BIT 1561 #define PG_TYPE_VARBIT 1562 #define PG_TYPE__VARBIT 1563 #define PG_TYPE_NUMERIC 1700 #define PG_TYPE_REFCURSOR 1790 #define PG_TYPE__REFCURSOR 2201 #define PG_TYPE_REGPROCEDURE 2202 #define PG_TYPE_REGOPER 2203 #define PG_TYPE_REGOPERATOR 2204 #define PG_TYPE_REGCLASS 2205 #define PG_TYPE_REGTYPE 2206 #define PG_TYPE__REGPROCEDURE 2207 #define PG_TYPE__REGOPER 2208 #define PG_TYPE__REGOPERATOR 2209 #define PG_TYPE__REGCLASS 2210 #define PG_TYPE__REGTYPE 2211 #define PG_TYPE_RECORD 2249 #define PG_TYPE_CSTRING 2275 #define PG_TYPE_ANY 2276 #define PG_TYPE_ANYARRAY 2277 #define PG_TYPE_VOID 2278 #define PG_TYPE_TRIGGER 2279 #define PG_TYPE_LANGUAGE_HANDLER 2280 #define PG_TYPE_INTERNAL 2281 #define PG_TYPE_OPAQUE 2282 #define PG_TYPE_PG_ATTRDEF 16385 #define PG_TYPE_PG_CONSTRAINT 16387 #define PG_TYPE_PG_INHERITS 16389 #define PG_TYPE_PG_INDEX 16391 #define PG_TYPE_PG_OPERATOR 16393 #define PG_TYPE_PG_OPCLASS 16395 #define PG_TYPE_PG_AM 16397 #define PG_TYPE_PG_AMOP 16399 #define PG_TYPE_PG_AMPROC 16401 #define PG_TYPE_PG_LANGUAGE 16403 #define PG_TYPE_PG_LARGEOBJECT 16405 #define PG_TYPE_PG_AGGREGATE 16407 #define PG_TYPE_PG_STATISTIC 16409 #define PG_TYPE_PG_REWRITE 16411 #define PG_TYPE_PG_TRIGGER 16413 #define PG_TYPE_PG_LISTENER 16415 #define PG_TYPE_PG_DESCRIPTION 16417 #define PG_TYPE_PG_CAST 16419 #define PG_TYPE_PG_NAMESPACE 16595 #define PG_TYPE_PG_CONVERSION 16597 #define PG_TYPE_PG_DEPEND 16599 #define PG_TYPE_PG_TOAST_16384 16655 #define PG_TYPE_PG_TOAST_16386 16658 #define PG_TYPE_PG_TOAST_1262 16661 #define PG_TYPE_PG_TOAST_16416 16664 #define PG_TYPE_PG_TOAST_1261 16667 #define PG_TYPE_PG_TOAST_1255 16670 #define PG_TYPE_PG_TOAST_16410 16673 #define PG_TYPE_PG_TOAST_1260 16676 #define PG_TYPE_PG_TOAST_16408 16679 #define PG_TYPE_PG_USER 16682 #define PG_TYPE_PG_RULES 16685 #define PG_TYPE_PG_VIEWS 16689 #define PG_TYPE_PG_TABLES 16692 #define PG_TYPE_PG_INDEXES 16695 #define PG_TYPE_PG_STATS 16699 #define PG_TYPE_PG_STAT_ALL_TABLES 16703 #define PG_TYPE_PG_STAT_SYS_TABLES 16707 #define PG_TYPE_PG_STAT_USER_TABLES 16710 #define PG_TYPE_PG_STATIO_ALL_TABLES 16713 #define PG_TYPE_PG_STATIO_SYS_TABLES 16717 #define PG_TYPE_PG_STATIO_USER_TABLES 16720 #define PG_TYPE_PG_STAT_ALL_INDEXES 16723 #define PG_TYPE_PG_STAT_SYS_INDEXES 16727 #define PG_TYPE_PG_STAT_USER_INDEXES 16730 #define PG_TYPE_PG_STATIO_ALL_INDEXES 16733 #define PG_TYPE_PG_STATIO_SYS_INDEXES 16737 #define PG_TYPE_PG_STATIO_USER_INDEXES 16740 #define PG_TYPE_PG_STATIO_ALL_SEQUENCES 16743 #define PG_TYPE_PG_STATIO_SYS_SEQUENCES 16746 #define PG_TYPE_PG_STATIO_USER_SEQUENCES 16749 #define PG_TYPE_PG_STAT_ACTIVITY 16752 #define PG_TYPE_PG_STAT_DATABASE 16755 #define PG_TYPE_PG_LOCKS 16758 #define PG_TYPE_PG_SETTINGS 16761 #endif