solaris changes
[csql.git] / src / odbc / odbcDesc.h
blob63b89800817f2cf898238146c82fd9d54a7b03b8
1 // Class CSqlOdbcDescList, CSqlOdbcDesc
2 // Description: Generic descriptor manager.
3 // Used as ARD, IRD, APD, IPD.
5 #ifndef _ODBC_DESCLIST_H_
6 #define _ODBC_DESCLIST_H_
8 #define SQL_DESC_APP 0
9 #define SQL_DESC_IMP 1
11 // Bound Column/Parameter Descriptor
12 class CSqlOdbcDesc
14 public:
15 SQLSMALLINT col_; // Which column/param number is bound. ?
17 // Metadata Info
18 SQLCHAR schemaName_[ SQL_MAX_SCHEMA_NAME_LEN ]; // Schema Name.
19 SQLCHAR tableName_[ SQL_MAX_TABLE_NAME_LEN ]; // Table Name.
20 SQLCHAR colName_[ SQL_MAX_COLUMN_NAME_LEN ]; // Column Name.
21 SQLSMALLINT paramType_; // SQL_PARAM_INPUT/OUTPUT/INPUT_OUTPUT.
23 // Data at node.
24 SQLPOINTER dataPtr_; // Data at column.
25 SQLUINTEGER length_; // No. of bytes in data.
26 SQLSMALLINT precision_;
27 SQLSMALLINT scale_;
28 SQLPOINTER indPtr_; // Indicator variable supplied in SQLBindParameter()
29 SQLSMALLINT nullable_; // Indicator variable supplied in SQLBindParameter()
31 // DataType info.
32 SQLSMALLINT cType_; // C datatype identifier.
33 SQLSMALLINT csqlType_; // Equivalent CSQL Type.
34 SQLSMALLINT sqlType_;
36 // METHODS
37 CSqlOdbcDesc( void );
40 class CSqlOdbcDescList
42 public:
43 int type_;
44 public:
45 List descList_;
46 CSqlOdbcDescList ( int descType);
47 SQLRETURN delDesc( CSqlOdbcDesc *node );
48 void freeAllDesc( void );
49 SQLRETURN getDescWithColNum( int colNum, CSqlOdbcDesc **out );
52 #endif // _ODBC_DESCLIST_H_