1 | #ifndef POSTGRES_SQLCA_H |
2 | #define POSTGRES_SQLCA_H |
3 | |
4 | #ifndef PGDLLIMPORT |
5 | #if defined(WIN32) || defined(__CYGWIN__) |
6 | #define PGDLLIMPORT __declspec (dllimport) |
7 | #else |
8 | #define PGDLLIMPORT |
9 | #endif /* __CYGWIN__ */ |
10 | #endif /* PGDLLIMPORT */ |
11 | |
12 | #define SQLERRMC_LEN 150 |
13 | |
14 | #ifdef __cplusplus |
15 | extern "C" |
16 | { |
17 | #endif |
18 | |
19 | struct sqlca_t |
20 | { |
21 | char sqlcaid[8]; |
22 | long sqlabc; |
23 | long sqlcode; |
24 | struct |
25 | { |
26 | int sqlerrml; |
27 | char sqlerrmc[SQLERRMC_LEN]; |
28 | } sqlerrm; |
29 | char sqlerrp[8]; |
30 | long sqlerrd[6]; |
31 | /* Element 0: empty */ |
32 | /* 1: OID of processed tuple if applicable */ |
33 | /* 2: number of rows processed */ |
34 | /* after an INSERT, UPDATE or */ |
35 | /* DELETE statement */ |
36 | /* 3: empty */ |
37 | /* 4: empty */ |
38 | /* 5: empty */ |
39 | char sqlwarn[8]; |
40 | /* Element 0: set to 'W' if at least one other is 'W' */ |
41 | /* 1: if 'W' at least one character string */ |
42 | /* value was truncated when it was */ |
43 | /* stored into a host variable. */ |
44 | |
45 | /* |
46 | * 2: if 'W' a (hopefully) non-fatal notice occurred |
47 | */ /* 3: empty */ |
48 | /* 4: empty */ |
49 | /* 5: empty */ |
50 | /* 6: empty */ |
51 | /* 7: empty */ |
52 | |
53 | char sqlstate[5]; |
54 | }; |
55 | |
56 | struct sqlca_t *ECPGget_sqlca(void); |
57 | |
58 | #ifndef POSTGRES_ECPG_INTERNAL |
59 | #define sqlca (*ECPGget_sqlca()) |
60 | #endif |
61 | |
62 | #ifdef __cplusplus |
63 | } |
64 | #endif |
65 | |
66 | #endif |
67 | |