FreeTDS API
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
ODBC utility
ODBC API

Functions called within ODBC driver. More...

Macros

#define C_TYPES
 
#define SQL_TYPES
 
#define TYPE_NORMAL_SQL_C_GUID
 
#define TYPE_NORMAL_SQL_GUID
 

Functions

int odbc_c_to_server_type (int c_type)
 Pass this an SQL_C_* type and get a SYB* type which most closely corresponds to the SQL_C_* type.
 
void odbc_convert_err_set (struct _sql_errors *errs, TDS_INT err)
 
DSTRodbc_dstr_copy (TDS_DBC *dbc, DSTR *s, int size, ODBC_CHAR *str)
 
SQLSMALLINT odbc_get_concise_c_type (SQLSMALLINT type, SQLSMALLINT interval)
 
SQLSMALLINT odbc_get_concise_sql_type (SQLSMALLINT type, SQLSMALLINT interval)
 
SQLLEN odbc_get_octet_len (int c_type, const struct _drecord *drec)
 
SQLINTEGER odbc_get_param_len (const struct _drecord *drec_axd, const struct _drecord *drec_ixd, const TDS_DESC *axd, unsigned int n_row)
 Return length of parameter from parameter information.
 
int odbc_get_string_size (int size, ODBC_CHAR *str _WIDE)
 
void odbc_rdbms_version (TDSSOCKET *tds, char *pversion_string)
 Returns the version of the RDBMS in the ODBC format.
 
SQLSMALLINT odbc_server_to_sql_type (int col_type, int col_size)
 Convert type from database to ODBC.
 
SQLRETURN odbc_set_concise_c_type (SQLSMALLINT concise_type, struct _drecord *drec, int check_only)
 Set concise type and all cascading field.
 
SQLRETURN odbc_set_concise_sql_type (SQLSMALLINT concise_type, struct _drecord *drec, int check_only)
 Set concise type and all cascading field.
 
void odbc_set_return_params (struct _hstmt *stmt, unsigned int n_row)
 
void odbc_set_return_status (struct _hstmt *stmt, unsigned int n_row)
 
void odbc_set_sql_type_info (TDSCOLUMN *col, struct _drecord *drec, SQLINTEGER odbc_ver)
 
static int odbc_set_stmt (TDS_STMT *stmt, char **dest, const ODBC_CHAR *sql, int sql_len _WIDE)
 
int odbc_set_stmt_prepared_query (TDS_STMT *stmt, const ODBC_CHAR *sql, int sql_len _WIDE)
 
int odbc_set_stmt_query (TDS_STMT *stmt, const ODBC_CHAR *sql, int sql_len _WIDE)
 
SQLRETURN odbc_set_string_flag (TDS_DBC *dbc, SQLPOINTER buffer, SQLINTEGER cbBuffer, void FAR *pcbBuffer, const char *s, int len, int flag)
 Copy a string to client setting size according to ODBC convenction.
 
int odbc_sql_to_c_type_default (int sql_type)
 
SQLINTEGER odbc_sql_to_displaysize (int sqltype, TDSCOLUMN *col)
 
int odbc_sql_to_server_type (TDSSOCKET *tds, int sql_type)
 
static char * odbc_strndup (const char *s, int len)
 

Detailed Description

Functions called within ODBC driver.

Macro Definition Documentation

#define SQL_TYPES
Value:
TYPE_NORMAL(SQL_BIT) \
TYPE_NORMAL(SQL_SMALLINT) \
TYPE_NORMAL(SQL_TINYINT) \
TYPE_NORMAL(SQL_INTEGER) \
TYPE_NORMAL(SQL_BIGINT) \
\
TYPE_NORMAL_SQL_GUID \
\
TYPE_NORMAL(SQL_BINARY) \
TYPE_NORMAL(SQL_VARBINARY) \
TYPE_NORMAL(SQL_LONGVARBINARY) \
\
TYPE_NORMAL(SQL_CHAR) \
TYPE_NORMAL(SQL_VARCHAR) \
TYPE_NORMAL(SQL_LONGVARCHAR) \
TYPE_NORMAL(SQL_WCHAR) \
TYPE_NORMAL(SQL_WVARCHAR) \
TYPE_NORMAL(SQL_WLONGVARCHAR) \
\
TYPE_NORMAL(SQL_DECIMAL) \
TYPE_NORMAL(SQL_NUMERIC) \
\
TYPE_NORMAL(SQL_FLOAT) \
TYPE_NORMAL(SQL_REAL) \
TYPE_NORMAL(SQL_DOUBLE)\
\
TYPE_VERBOSE_START(SQL_DATETIME) \
TYPE_VERBOSE_DATE(SQL_DATETIME, SQL_CODE_TIMESTAMP, SQL_TYPE_TIMESTAMP, SQL_TIMESTAMP) \
TYPE_VERBOSE_END(SQL_DATETIME)

Function Documentation

int odbc_c_to_server_type ( int  c_type)

Pass this an SQL_C_* type and get a SYB* type which most closely corresponds to the SQL_C_* type.

This function can return XSYBNVARCHAR even if server do not support it

SQLRETURN odbc_set_concise_c_type ( SQLSMALLINT  concise_type,
struct _drecord drec,
int  check_only 
)

Set concise type and all cascading field.

Parameters
concise_typeconcise type to set
drecrecord to set. NULL to test error without setting
check_onlyit <>0 (true) check only, do not set type
SQLRETURN odbc_set_concise_sql_type ( SQLSMALLINT  concise_type,
struct _drecord drec,
int  check_only 
)

Set concise type and all cascading field.

Parameters
concise_typeconcise type to set
drecrecord to set. NULL to test error without setting
check_onlyit <>0 (true) check only, do not set type
SQLRETURN odbc_set_string_flag ( TDS_DBC dbc,
SQLPOINTER  buffer,
SQLINTEGER  cbBuffer,
void FAR *  pcbBuffer,
const char *  s,
int  len,
int  flag 
)

Copy a string to client setting size according to ODBC convenction.

Parameters
dbcdatabase connection. Can be NULL
bufferclient buffer
cbBufferclient buffer size (in bytes)
pcbBufferpointer to SQLSMALLINT to hold string size
sstring to copy
lenlen of string to copy. <0 null terminated
flagset of flag 0x10 SQLINTEGER