FreeTDS API: tds_column Struct Reference

FreeTDS API

Public Attributes | List of all members
tds_column Struct Reference

Metadata about columns in regular and compute rows. More...

`#include <tds.h>`

Collaboration diagram for tds_column:
[legend]

## Public Attributes
BCPCOLDATA * | bcp_column_data
TDS_INT | bcp_prefix_len
| The length, in bytes, of any length prefix this column may have. More...
TDS_INT | bcp_term_len
TDS_CHAR * | bcp_terminator
TDSICONV * | char_conv
| refers to previously allocated iconv information
TDS_SMALLINT | column_bindfmt
TDS_UINT | column_bindlen
TDS_SMALLINT | column_bindtype
TDS_UCHAR | column_collation [5]
TDS_INT | column_cur_size
| size written in variable (ie: char, text, binary). More...
unsigned char * | column_data
void(* | column_data_free )(struct tds_column *column)
TDS_INT | column_flags
unsigned int | column_hidden:1
unsigned int | column_identity:1
unsigned int | column_key:1
TDS_INT * | column_lenbind
DSTR | column_name
unsigned int | column_nullable:1
TDS_SMALLINT * | column_nullbind
TDS_SMALLINT | column_operand
TDS_TINYINT | column_operator
unsigned int | column_output:1
TDS_TINYINT | column_prec
| precision for decimal/numeric
TDS_TINYINT | column_scale
| scale for decimal/numeric
TDS_INT | column_size
| maximun size of data. More...
TDS_INT | column_text_sqlgetdatapos
TDS_CHAR | column_text_sqlputdatainfo
TDS_INT | column_textpos
unsigned int | column_timestamp:1
TDS_SERVER_TYPE | column_type
| This type can be different from wire type because conversion (e.g. More...
TDS_INT | column_usertype
TDS_CHAR * | column_varaddr
TDS_TINYINT | column_varint_size
| size of length when reading from wire (0, 1, 2 or 4)
unsigned int | column_writeable:1
const TDSCOLUMNFUNCS * | funcs
struct {
TDS_INT column_size
TDS_SERVER_TYPE column_type
| type of data, saved from wire
} | on_server
DSTR | table_column_name
DSTR | table_name

## Detailed Description

Metadata about columns in regular and compute rows.

## Member Data Documentation

## § bcp_prefix_len

TDS_INT tds_column::bcp_prefix_len

The length, in bytes, of any length prefix this column may have.

For example, strings in some non-C programming languages are made up of a one-byte length prefix, followed by the string data itself. If the data do not have a length prefix, set prefixlen to 0. Currently not very used in code, however do not remove.

## § column_cur_size

TDS_INT tds_column::column_cur_size

size written in variable (ie: char, text, binary).

-1 if NULL.

## § column_size

TDS_INT tds_column::column_size

maximun size of data.

For fixed is the size.

## § column_type

TDS_SERVER_TYPE tds_column::column_type

This type can be different from wire type because conversion (e.g.

type of data, saved from wire

UCS-2->Ascii) can be applied. I'm beginning to wonder about the wisdom of this, however. April 2003 jkl

The documentation for this struct was generated from the following file:

- include/freetds/tds.h