1 /*
2  * src/interfaces/ecpg/include/sqlda-compat.h
3  */
4 
5 #ifndef ECPG_SQLDA_COMPAT_H
6 #define ECPG_SQLDA_COMPAT_H
7 
8 struct sqlvar_compat
9 {
10 	short		sqltype;		/* variable type				*/
11 	int			sqllen;			/* length in bytes				*/
12 	char	   *sqldata;		/* pointer to data				*/
13 	short	   *sqlind;			/* pointer to indicator			*/
14 	char	   *sqlname;		/* variable name				*/
15 	char	   *sqlformat;		/* reserved for future use		*/
16 	short		sqlitype;		/* ind variable type			*/
17 	short		sqlilen;		/* ind length in bytes			*/
18 	char	   *sqlidata;		/* ind data pointer				*/
19 	int			sqlxid;			/* extended id type				*/
20 	char	   *sqltypename;	/* extended type name			*/
21 	short		sqltypelen;		/* length of extended type name */
22 	short		sqlownerlen;	/* length of owner name			*/
23 	short		sqlsourcetype;	/* source type for distinct of built-ins */
24 	char	   *sqlownername;	/* owner name					*/
25 	int			sqlsourceid;	/* extended id of source type	*/
26 
27 	/*
28 	 * sqlilongdata is new.  It supports data that exceeds the 32k limit.
29 	 * sqlilen and sqlidata are for backward compatibility and they have
30 	 * maximum value of <32K.
31 	 */
32 	char	   *sqlilongdata;	/* for data field beyond 32K	*/
33 	int			sqlflags;		/* for internal use only		*/
34 	void	   *sqlreserved;	/* reserved for future use		*/
35 };
36 
37 struct sqlda_compat
38 {
39 	short		sqld;
40 	struct sqlvar_compat *sqlvar;
41 	char		desc_name[19];	/* descriptor name				*/
42 	short		desc_occ;		/* size of sqlda structure		*/
43 	struct sqlda_compat *desc_next; /* pointer to next sqlda struct */
44 	void	   *reserved;		/* reserved for future use */
45 };
46 
47 #endif							/* ECPG_SQLDA_COMPAT_H */
48