1 | /* src/interfaces/ecpg/include/ecpgerrno.h */ |
2 | |
3 | #ifndef _ECPG_ERRNO_H |
4 | #define _ECPG_ERRNO_H |
5 | |
6 | #include <errno.h> |
7 | |
8 | /* This is a list of all error codes the embedded SQL program can return */ |
9 | #define ECPG_NO_ERROR 0 |
10 | #define ECPG_NOT_FOUND 100 |
11 | |
12 | /* system error codes returned by ecpglib get the correct number, |
13 | * but are made negative |
14 | */ |
15 | #define ECPG_OUT_OF_MEMORY -ENOMEM |
16 | |
17 | /* first we have a set of ecpg messages, they start at 200 */ |
18 | #define ECPG_UNSUPPORTED -200 |
19 | #define ECPG_TOO_MANY_ARGUMENTS -201 |
20 | #define ECPG_TOO_FEW_ARGUMENTS -202 |
21 | #define ECPG_TOO_MANY_MATCHES -203 |
22 | #define ECPG_INT_FORMAT -204 |
23 | #define ECPG_UINT_FORMAT -205 |
24 | #define ECPG_FLOAT_FORMAT -206 |
25 | #define ECPG_NUMERIC_FORMAT -207 |
26 | #define ECPG_INTERVAL_FORMAT -208 |
27 | #define ECPG_DATE_FORMAT -209 |
28 | #define ECPG_TIMESTAMP_FORMAT -210 |
29 | #define ECPG_CONVERT_BOOL -211 |
30 | #define ECPG_EMPTY -212 |
31 | #define ECPG_MISSING_INDICATOR -213 |
32 | #define ECPG_NO_ARRAY -214 |
33 | #define ECPG_DATA_NOT_ARRAY -215 |
34 | #define ECPG_ARRAY_INSERT -216 |
35 | |
36 | #define ECPG_NO_CONN -220 |
37 | #define ECPG_NOT_CONN -221 |
38 | |
39 | #define ECPG_INVALID_STMT -230 |
40 | |
41 | /* dynamic SQL related */ |
42 | #define ECPG_UNKNOWN_DESCRIPTOR -240 |
43 | #define ECPG_INVALID_DESCRIPTOR_INDEX -241 |
44 | #define ECPG_UNKNOWN_DESCRIPTOR_ITEM -242 |
45 | #define ECPG_VAR_NOT_NUMERIC -243 |
46 | #define ECPG_VAR_NOT_CHAR -244 |
47 | |
48 | /* finally the backend error messages, they start at 400 */ |
49 | #define ECPG_PGSQL -400 |
50 | #define ECPG_TRANS -401 |
51 | #define ECPG_CONNECT -402 |
52 | #define ECPG_DUPLICATE_KEY -403 |
53 | #define ECPG_SUBSELECT_NOT_ONE -404 |
54 | |
55 | /* for compatibility we define some different error codes for the same error |
56 | * if adding a new one make sure to not double define it */ |
57 | #define ECPG_INFORMIX_DUPLICATE_KEY -239 |
58 | #define ECPG_INFORMIX_SUBSELECT_NOT_ONE -284 |
59 | |
60 | /* backend WARNINGs, starting at 600 */ |
61 | #define ECPG_WARNING_UNRECOGNIZED -600 |
62 | /* WARNING: (transaction aborted): queries ignored until END */ |
63 | |
64 | /* |
65 | * WARNING: current transaction is aborted, queries ignored until end of |
66 | * transaction block |
67 | */ |
68 | #define ECPG_WARNING_QUERY_IGNORED -601 |
69 | /* WARNING: PerformPortalClose: portal "*" not found */ |
70 | #define ECPG_WARNING_UNKNOWN_PORTAL -602 |
71 | /* WARNING: BEGIN: already a transaction in progress */ |
72 | #define ECPG_WARNING_IN_TRANSACTION -603 |
73 | /* WARNING: AbortTransaction and not in in-progress state */ |
74 | /* WARNING: COMMIT: no transaction in progress */ |
75 | #define ECPG_WARNING_NO_TRANSACTION -604 |
76 | /* WARNING: BlankPortalAssignName: portal * already exists */ |
77 | #define ECPG_WARNING_PORTAL_EXISTS -605 |
78 | |
79 | #endif /* !_ECPG_ERRNO_H */ |
80 | |