Eneboo - Documentación para desarrolladores
src/libpq/include/postgres_ext.h
Ir a la documentación de este archivo.
00001 /*-------------------------------------------------------------------------
00002  *
00003  * postgres_ext.h
00004  *
00005  *         This file contains declarations of things that are visible everywhere
00006  *      in PostgreSQL *and* are visible to clients of frontend interface libraries.
00007  *      For example, the Oid type is part of the API of libpq and other libraries.
00008  *
00009  *         Declarations which are specific to a particular interface should
00010  *      go in the header file for that interface (such as libpq-fe.h).  This
00011  *      file is only for fundamental Postgres declarations.
00012  *
00013  *         User-written C functions don't count as "external to Postgres."
00014  *      Those function much as local modifications to the backend itself, and
00015  *      use header files that are otherwise internal to Postgres to interface
00016  *      with the backend.
00017  *
00018  * $PostgreSQL: pgsql/src/include/postgres_ext.h,v 1.16 2004/08/29 05:06:55 momjian Exp $
00019  *
00020  *-------------------------------------------------------------------------
00021  */
00022 
00023 #ifndef POSTGRES_EXT_H
00024 #define POSTGRES_EXT_H
00025 
00026 /*
00027  * Object ID is a fundamental type in Postgres.
00028  */
00029 typedef unsigned int Oid;
00030 
00031 #ifdef __cplusplus
00032 #define InvalidOid              (Oid(0))
00033 #else
00034 #define InvalidOid              ((Oid) 0)
00035 #endif
00036 
00037 #define OID_MAX  UINT_MAX
00038 /* you will need to include <limits.h> to use the above #define */
00039 
00040 
00041 /*
00042  * NAMEDATALEN is the max length for system identifiers (e.g. table names,
00043  * attribute names, function names, etc).  It must be a multiple of
00044  * sizeof(int) (typically 4).
00045  *
00046  * NOTE that databases with different NAMEDATALEN's cannot interoperate!
00047  */
00048 #define NAMEDATALEN 64
00049 
00050 
00051 /*
00052  * Identifiers of error message fields.  Kept here to keep common
00053  * between frontend and backend, and also to export them to libpq
00054  * applications.
00055  */
00056 #define PG_DIAG_SEVERITY                'S'
00057 #define PG_DIAG_SQLSTATE                'C'
00058 #define PG_DIAG_MESSAGE_PRIMARY 'M'
00059 #define PG_DIAG_MESSAGE_DETAIL  'D'
00060 #define PG_DIAG_MESSAGE_HINT    'H'
00061 #define PG_DIAG_STATEMENT_POSITION 'P'
00062 #define PG_DIAG_INTERNAL_POSITION 'p'
00063 #define PG_DIAG_INTERNAL_QUERY  'q'
00064 #define PG_DIAG_CONTEXT                 'W'
00065 #define PG_DIAG_SOURCE_FILE             'F'
00066 #define PG_DIAG_SOURCE_LINE             'L'
00067 #define PG_DIAG_SOURCE_FUNCTION 'R'
00068 
00069 #endif
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'