|
|
#ifndef _INC_SQLDB
#define _INC_SQLDB
#ifdef __cplusplus
extern "C" { #endif
/*****************************************************************************
* * * SQLDB.H - DB-Library header file for the Microsoft SQL Server. * * * * Copyright (c) 1989 - 1995 by Microsoft Corp. All rights reserved. * * * *****************************************************************************/
// Macros for setting the PLOGINREC
#define DBSETLHOST(a,b) dbsetlname ((a), (b), DBSETHOST)
#define DBSETLUSER(a,b) dbsetlname ((a), (b), DBSETUSER)
#define DBSETLPWD(a,b) dbsetlname ((a), (b), DBSETPWD)
#define DBSETLAPP(a,b) dbsetlname ((a), (b), DBSETAPP)
#define BCP_SETL(a,b) bcp_setl ((a), (b))
#define DBSETLNATLANG(a,b) dbsetlname ((a), (b), DBSETLANG)
#define DBSETLPACKET(a,b) dbsetlpacket ((a), (b))
#define DBSETLSECURE(a) dbsetlname ((a), 0, DBSETSECURE)
#define DBSETLVERSION(a,b) dbsetlname ((a), 0, (b))
#define DBSETLTIME(a,b) dbsetlname ((a), (LPCSTR)(ULONG)(b), DBSETLOGINTIME)
#define DBSETLFALLBACK(a,b) dbsetlname ((a), (b), DBSETFALLBACK)
/*****************************************************************************
* Windows 3.x and Non-Windows 3.x differences. * *****************************************************************************/
#ifdef DBMSWIN
extern void SQLAPI dbwinexit(void);
void SQLAPI dblocklib (void); void SQLAPI dbunlocklib (void);
#define DBLOCKLIB() dblocklib()
#define DBUNLOCKLIB() dbunlocklib()
#define DBERRHANDLE_PROC FARPROC
#define DBMSGHANDLE_PROC FARPROC
extern DBERRHANDLE_PROC dberrhandle (DBERRHANDLE_PROC); extern DBMSGHANDLE_PROC dbmsghandle (DBMSGHANDLE_PROC);
#else
#define dbwinexit()
#define DBLOCKLIB()
#define DBUNLOCKLIB()
typedef INT (SQLAPI *DBERRHANDLE_PROC)(PDBPROCESS, INT, INT, INT, LPCSTR, LPCSTR); typedef INT (SQLAPI *DBMSGHANDLE_PROC)(PDBPROCESS, DBINT, INT, INT, LPCSTR, LPCSTR, LPCSTR, DBUSMALLINT);
extern DBERRHANDLE_PROC SQLAPI dberrhandle(DBERRHANDLE_PROC); extern DBMSGHANDLE_PROC SQLAPI dbmsghandle(DBMSGHANDLE_PROC);
extern DBERRHANDLE_PROC SQLAPI dbprocerrhandle(PDBHANDLE, DBERRHANDLE_PROC); extern DBMSGHANDLE_PROC SQLAPI dbprocmsghandle(PDBHANDLE, DBMSGHANDLE_PROC);
#endif
/*****************************************************************************
* Function Prototypes * *****************************************************************************/
// Functions macros
#define DBCMDROW(a) dbcmdrow(a)
#define DBCOUNT(a) dbcount (a)
#define DBCURCMD(a) dbcurcmd(a)
#define DBCURROW(a) dbcurrow(a)
#define DBDEAD(a) dbdead(a)
#define DBFIRSTROW(a) dbfirstrow(a)
#define DBGETTIME() dbgettime()
#define DBISAVAIL(a) dbisavail(a)
#define DBLASTROW(a) dblastrow(a)
#define DBMORECMDS(a) dbmorecmds(a)
#define DBNUMORDERS(a) dbnumorders(a)
#define dbrbuf(a) ((DBINT)dbdataready(a))
#define DBRBUF(a) ((DBINT)dbdataready(a))
#define DBROWS(a) dbrows (a)
#define DBROWTYPE(a) dbrowtype (a)
// Two-phase commit functions
extern RETCODE SQLAPI abort_xact (PDBPROCESS, DBINT); extern void SQLAPI build_xact_string (LPCSTR, LPCSTR, DBINT, LPSTR); extern void SQLAPI close_commit (PDBPROCESS); extern RETCODE SQLAPI commit_xact (PDBPROCESS, DBINT); extern PDBPROCESS SQLAPI open_commit (PLOGINREC, LPCSTR); extern RETCODE SQLAPI remove_xact (PDBPROCESS, DBINT, INT); extern RETCODE SQLAPI scan_xact (PDBPROCESS, DBINT); extern DBINT SQLAPI start_xact (PDBPROCESS, LPCSTR, LPCSTR, INT); extern INT SQLAPI stat_xact (PDBPROCESS, DBINT);
// BCP functions
extern DBINT SQLAPI bcp_batch (PDBPROCESS); extern RETCODE SQLAPI bcp_bind (PDBPROCESS, LPCBYTE, INT, DBINT, LPCBYTE, INT, INT, INT); extern RETCODE SQLAPI bcp_colfmt (PDBPROCESS, INT, BYTE, INT, DBINT, LPCBYTE, INT, INT); extern RETCODE SQLAPI bcp_collen (PDBPROCESS, DBINT, INT); extern RETCODE SQLAPI bcp_colptr (PDBPROCESS, LPCBYTE, INT); extern RETCODE SQLAPI bcp_columns (PDBPROCESS, INT); extern RETCODE SQLAPI bcp_control (PDBPROCESS, INT, DBINT); extern DBINT SQLAPI bcp_done (PDBPROCESS); extern RETCODE SQLAPI bcp_exec (PDBPROCESS, LPDBINT); extern RETCODE SQLAPI bcp_init (PDBPROCESS, LPCSTR, LPCSTR, LPCSTR, INT); extern RETCODE SQLAPI bcp_moretext (PDBPROCESS, DBINT, LPCBYTE); extern RETCODE SQLAPI bcp_readfmt (PDBPROCESS, LPCSTR); extern RETCODE SQLAPI bcp_sendrow (PDBPROCESS); extern RETCODE SQLAPI bcp_setl (PLOGINREC, BOOL); extern RETCODE SQLAPI bcp_writefmt (PDBPROCESS, LPCSTR);
// Standard DB-Library functions
extern LPCBYTE SQLAPI dbadata (PDBPROCESS, INT, INT); extern DBINT SQLAPI dbadlen (PDBPROCESS, INT, INT); extern RETCODE SQLAPI dbaltbind (PDBPROCESS, INT, INT, INT, DBINT, LPCBYTE); extern INT SQLAPI dbaltcolid (PDBPROCESS, INT, INT); extern DBINT SQLAPI dbaltlen (PDBPROCESS, INT, INT); extern INT SQLAPI dbaltop (PDBPROCESS, INT, INT); extern INT SQLAPI dbalttype (PDBPROCESS, INT, INT); extern DBINT SQLAPI dbaltutype (PDBPROCESS, INT, INT); extern RETCODE SQLAPI dbanullbind (PDBPROCESS, INT, INT, LPCDBINT); extern RETCODE SQLAPI dbbind (PDBPROCESS, INT, INT, DBINT, LPBYTE); extern LPCBYTE SQLAPI dbbylist (PDBPROCESS, INT, LPINT); extern RETCODE SQLAPI dbcancel (PDBPROCESS); extern RETCODE SQLAPI dbcanquery (PDBPROCESS); extern LPCSTR SQLAPI dbchange (PDBPROCESS); extern RETCODE SQLAPI dbclose (PDBPROCESS); extern void SQLAPI dbclrbuf (PDBPROCESS, DBINT); extern RETCODE SQLAPI dbclropt (PDBPROCESS, INT, LPCSTR); extern RETCODE SQLAPI dbcmd (PDBPROCESS, LPCSTR); extern RETCODE SQLAPI dbcmdrow (PDBPROCESS); extern BOOL SQLAPI dbcolbrowse (PDBPROCESS, INT); extern RETCODE SQLAPI dbcolinfo (PDBHANDLE, INT, INT, INT, LPDBCOL); extern DBINT SQLAPI dbcollen (PDBPROCESS, INT); extern LPCSTR SQLAPI dbcolname (PDBPROCESS, INT); extern LPCSTR SQLAPI dbcolsource (PDBPROCESS, INT); extern INT SQLAPI dbcoltype (PDBPROCESS, INT); extern DBINT SQLAPI dbcolutype (PDBPROCESS, INT); extern INT SQLAPI dbconvert (PDBPROCESS, INT, LPCBYTE, DBINT, INT, LPBYTE, DBINT); extern DBINT SQLAPI dbcount (PDBPROCESS); extern INT SQLAPI dbcurcmd (PDBPROCESS); extern DBINT SQLAPI dbcurrow (PDBPROCESS); extern RETCODE SQLAPI dbcursor (PDBCURSOR, INT, INT, LPCSTR, LPCSTR); extern RETCODE SQLAPI dbcursorbind (PDBCURSOR, INT, INT, DBINT, LPDBINT, LPBYTE); extern RETCODE SQLAPI dbcursorclose (PDBHANDLE); extern RETCODE SQLAPI dbcursorcolinfo (PDBCURSOR, INT, LPSTR, LPINT, LPDBINT, LPINT); extern RETCODE SQLAPI dbcursorfetch (PDBCURSOR, INT, INT); extern RETCODE SQLAPI dbcursorfetchex (PDBCURSOR, INT, DBINT, DBINT, DBINT); extern RETCODE SQLAPI dbcursorinfo (PDBCURSOR, LPINT, LPDBINT); extern RETCODE SQLAPI dbcursorinfoex (PDBCURSOR, LPDBCURSORINFO); extern PDBCURSOR SQLAPI dbcursoropen (PDBPROCESS, LPCSTR, INT, INT,UINT, LPDBINT); extern LPCBYTE SQLAPI dbdata (PDBPROCESS, INT); extern BOOL SQLAPI dbdataready (PDBPROCESS); extern RETCODE SQLAPI dbdatecrack (PDBPROCESS, LPDBDATEREC, LPCDBDATETIME); extern DBINT SQLAPI dbdatlen (PDBPROCESS, INT); extern BOOL SQLAPI dbdead (PDBPROCESS); extern void SQLAPI dbexit (void); extern RETCODE SQLAPI dbenlisttrans(PDBPROCESS, LPVOID); extern RETCODE SQLAPI dbenlistxatrans(PDBPROCESS, BOOL); extern RETCODE SQLAPI dbfcmd (PDBPROCESS, LPCSTR, ...); extern DBINT SQLAPI dbfirstrow (PDBPROCESS); extern void SQLAPI dbfreebuf (PDBPROCESS); extern void SQLAPI dbfreelogin (PLOGINREC); extern void SQLAPI dbfreequal (LPCSTR); extern LPSTR SQLAPI dbgetchar (PDBPROCESS, INT); extern SHORT SQLAPI dbgetmaxprocs (void); extern INT SQLAPI dbgetoff (PDBPROCESS, DBUSMALLINT, INT); extern UINT SQLAPI dbgetpacket (PDBPROCESS); extern STATUS SQLAPI dbgetrow (PDBPROCESS, DBINT); extern INT SQLAPI dbgettime (void); extern LPVOID SQLAPI dbgetuserdata (PDBPROCESS); extern BOOL SQLAPI dbhasretstat (PDBPROCESS); extern LPCSTR SQLAPI dbinit (void); extern BOOL SQLAPI dbisavail (PDBPROCESS); extern BOOL SQLAPI dbiscount (PDBPROCESS); extern BOOL SQLAPI dbisopt (PDBPROCESS, INT, LPCSTR); extern DBINT SQLAPI dblastrow (PDBPROCESS); extern PLOGINREC SQLAPI dblogin (void); extern RETCODE SQLAPI dbmorecmds (PDBPROCESS); extern RETCODE SQLAPI dbmoretext (PDBPROCESS, DBINT, LPCBYTE); extern LPCSTR SQLAPI dbname (PDBPROCESS); extern STATUS SQLAPI dbnextrow (PDBPROCESS); extern RETCODE SQLAPI dbnullbind (PDBPROCESS, INT, LPCDBINT); extern INT SQLAPI dbnumalts (PDBPROCESS, INT); extern INT SQLAPI dbnumcols (PDBPROCESS); extern INT SQLAPI dbnumcompute (PDBPROCESS); extern INT SQLAPI dbnumorders (PDBPROCESS); extern INT SQLAPI dbnumrets (PDBPROCESS); extern PDBPROCESS SQLAPI dbopen (PLOGINREC, LPCSTR); extern INT SQLAPI dbordercol (PDBPROCESS, INT); extern RETCODE SQLAPI dbprocinfo (PDBPROCESS, LPDBPROCINFO); extern void SQLAPI dbprhead (PDBPROCESS); extern RETCODE SQLAPI dbprrow (PDBPROCESS); extern LPCSTR SQLAPI dbprtype (INT); extern LPCSTR SQLAPI dbqual (PDBPROCESS, INT, LPCSTR); extern DBINT SQLAPI dbreadpage (PDBPROCESS, LPCSTR, DBINT, LPBYTE); extern DBINT SQLAPI dbreadtext (PDBPROCESS, LPVOID, DBINT); extern RETCODE SQLAPI dbresults (PDBPROCESS); extern LPCBYTE SQLAPI dbretdata (PDBPROCESS, INT); extern DBINT SQLAPI dbretlen (PDBPROCESS, INT); extern LPCSTR SQLAPI dbretname (PDBPROCESS, INT); extern DBINT SQLAPI dbretstatus (PDBPROCESS); extern INT SQLAPI dbrettype (PDBPROCESS, INT); extern RETCODE SQLAPI dbrows (PDBPROCESS); extern STATUS SQLAPI dbrowtype (PDBPROCESS); extern RETCODE SQLAPI dbrpcinit (PDBPROCESS, LPCSTR, DBSMALLINT); extern RETCODE SQLAPI dbrpcparam (PDBPROCESS, LPCSTR, BYTE, INT, DBINT, DBINT, LPCBYTE); extern RETCODE SQLAPI dbrpcsend (PDBPROCESS); extern RETCODE SQLAPI dbrpcexec (PDBPROCESS); extern void SQLAPI dbrpwclr (PLOGINREC); extern RETCODE SQLAPI dbrpwset (PLOGINREC, LPCSTR, LPCSTR, INT); extern INT SQLAPI dbserverenum (USHORT, LPSTR, USHORT, LPUSHORT); extern void SQLAPI dbsetavail (PDBPROCESS); extern RETCODE SQLAPI dbsetmaxprocs (SHORT); extern RETCODE SQLAPI dbsetlname (PLOGINREC, LPCSTR, INT); extern RETCODE SQLAPI dbsetlogintime (INT); extern RETCODE SQLAPI dbsetlpacket (PLOGINREC, USHORT); extern RETCODE SQLAPI dbsetnull (PDBPROCESS, INT, INT, LPCBYTE); extern RETCODE SQLAPI dbsetopt (PDBPROCESS, INT, LPCSTR); extern RETCODE SQLAPI dbsettime (INT); extern void SQLAPI dbsetuserdata (PDBPROCESS, LPVOID); extern RETCODE SQLAPI dbsqlexec (PDBPROCESS); extern RETCODE SQLAPI dbsqlok (PDBPROCESS); extern RETCODE SQLAPI dbsqlsend (PDBPROCESS); extern RETCODE SQLAPI dbstrcpy (PDBPROCESS, INT, INT, LPSTR); extern INT SQLAPI dbstrlen (PDBPROCESS); extern BOOL SQLAPI dbtabbrowse (PDBPROCESS, INT); extern INT SQLAPI dbtabcount (PDBPROCESS); extern LPCSTR SQLAPI dbtabname (PDBPROCESS, INT); extern LPCSTR SQLAPI dbtabsource (PDBPROCESS, INT, LPINT); extern INT SQLAPI dbtsnewlen (PDBPROCESS); extern LPCDBBINARY SQLAPI dbtsnewval (PDBPROCESS); extern RETCODE SQLAPI dbtsput (PDBPROCESS, LPCDBBINARY, INT, INT, LPCSTR); extern LPCDBBINARY SQLAPI dbtxptr (PDBPROCESS, INT); extern LPCDBBINARY SQLAPI dbtxtimestamp (PDBPROCESS, INT); extern LPCDBBINARY SQLAPI dbtxtsnewval (PDBPROCESS); extern RETCODE SQLAPI dbtxtsput (PDBPROCESS, LPCDBBINARY, INT); extern RETCODE SQLAPI dbuse (PDBPROCESS, LPCSTR); extern BOOL SQLAPI dbvarylen (PDBPROCESS, INT); extern BOOL SQLAPI dbwillconvert (INT, INT); extern RETCODE SQLAPI dbwritepage (PDBPROCESS, LPCSTR, DBINT, DBINT, LPBYTE); extern RETCODE SQLAPI dbwritetext (PDBPROCESS, LPCSTR, LPCDBBINARY, DBTINYINT, LPCDBBINARY, BOOL, DBINT, LPCBYTE); extern RETCODE SQLAPI dbupdatetext(PDBPROCESS, LPCSTR, LPCDBBINARY, LPCDBBINARY, INT, DBINT, DBINT, LPCSTR, DBINT, LPCDBBINARY);
#ifdef __cplusplus
} #endif
#endif // _INC_SQLDB
|