The db-lib API

Functions callable by `db-lib` client programs. More...

Collaboration diagram for The db-lib API:

## Modules

| Primary functions
| Core functions needed by most db-lib programs.
| Remote Procedure functions
| Functions used with stored procedures. Especially useful for OUTPUT parameters, because modern Microsoft servers do not return output parameter data to the client unless the procedure was invoked with dbrpcsend().
| Bulk copy functions
| Functions to bulk-copy (a/k/a bcp) data to/from the database.
| Money functions
| Functions to manipulate the MONEY datatype.
| Datetime functions
| Functions to manipulate DBDATETIME structures. Defined by Sybase only. These are not implemented:
| Internals
| Functions called within `db-lib` for self-help. These functions are of interest only to people hacking on the FreeTDS db-lib implementation.
| Unimplemented

Functions thus far not implemented in the FreeTDS db-lib implementation.
While some of these are simply awaiting someone with time and skill (and inclination) it might be noted here that the old browse functions (e.g. dbcolbrowse()) are on the never-to-do list.
They were defined by Sybase and were superseded long ago, although they're still present in Microsoft's implementation.
They were never popular and today better alternatives are available.
For completeness, they are:

## Macros

#define | BCP_SETL(x, y) dbsetlbool((x), (y), DBSETBCP)
| Enable (or prevent) bcp operations for connections made with a login. More...
#define | DBSETLAPP(x, y) dbsetlname((x), (y), DBSETAPP)
| Set the (client) application name in the login packet. More...
#define | DBSETLHOST(x, y) dbsetlname((x), (y), DBSETHOST)
| Set the (client) host name in the login packet. More...
#define | DBSETLPWD(x, y) dbsetlname((x), (y), DBSETPWD)
| Set the password in the login packet. More...
#define | DBSETLUSER(x, y) dbsetlname((x), (y), DBSETUSER)
| Set the username in the login packet. More...

## Detailed Description

Functions callable by `db-lib` client programs.

The `db_lib` interface is implemented by both Sybase and Microsoft. FreeTDS seeks to implement first the intersection of the functions defined by the vendors.

## Macro Definition Documentation

## BCP_SETL

BCP_SETL | ( |  | x,
|  |  | y
| ) |  | dbsetlbool((x), (y), DBSETBCP)

Enable (or prevent) bcp operations for connections made with a login.

See also
  bcp_setl()

## DBSETLAPP

DBSETLAPP | ( |  | x,
|  |  | y
| ) |  | dbsetlname((x), (y), DBSETAPP)

Set the (client) application name in the login packet.

See also
  dbsetlapp()

## DBSETLHOST

DBSETLHOST | ( |  | x,
|  |  | y
| ) |  | dbsetlname((x), (y), DBSETHOST)

Set the (client) host name in the login packet.

See also
  dbsetlhost()

## DBSETLPWD

DBSETLPWD | ( |  | x,
|  |  | y
| ) |  | dbsetlname((x), (y), DBSETPWD)

Set the password in the login packet.

See also
  dbsetlpwd()

## DBSETLUSER

DBSETLUSER | ( |  | x,
|  |  | y
| ) |  | dbsetlname((x), (y), DBSETUSER)

Set the username in the login packet.

See also
  dbsetluser()