⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sybdb.h

📁 ncbi源码
💻 H
📖 第 1 页 / 共 3 页
字号:
/* * =========================================================================== * PRODUCTION $Log: sybdb.h,v $ * PRODUCTION Revision 1000.1  2003/11/17 22:11:32  gouriano * PRODUCTION PRODUCTION: UPGRADED [ORIGINAL] Dev-tree R1.2 * PRODUCTION * =========================================================================== *//* FreeTDS - Library of routines accessing Sybase and Microsoft databases * Copyright (C) 1998-1999  Brian Bruns * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */#ifndef _sybdb_h_#define _sybdb_h_#include "tds.h"#ifdef __cplusplusextern "C" {#if 0}#endif#endifstatic char  rcsid_sybdb_h [ ] ="$Id: sybdb.h,v 1000.1 2003/11/17 22:11:32 gouriano Exp $";static void *no_unused_sybdb_h_warn[]={rcsid_sybdb_h, no_unused_sybdb_h_warn};#ifdef FALSE#undef FALSE#endif#ifdef TRUE#undef TRUE#endif#define FALSE 0#define TRUE  1#define DBSAVE   1#define DBNOSAVE 0#define DBNOERR  -1#define INT_EXIT   0#define INT_CONTINUE 1#define INT_CANCEL 2#define INT_TIMEOUT 3/* serverity levels, gleaned from google */#define EXINFO       1#define EXUSER       2#define EXNONFATAL   3#define EXCONVERSION 4#define EXSERVER     5#define EXTIME       6#define EXPROGRAM    7#define EXRESOURCE   8#define EXCOMM       9#define DBMAXNUMLEN 33#define MAXNAME     30#define DBVERSION_UNKNOWN 0#define DBVERSION_46      1#define DBVERSION_100     2#define DBVERSION_42      3#define DBVERSION_70      4#define DBVERSION_80      5#define SYBAOPCNT  0x4b#define SYBAOPCNTU 0x4c#define SYBAOPSUM  0x4d#define SYBAOPSUMU 0x4e#define SYBAOPAVG  0x4f#define SYBAOPAVGU 0x50#define SYBAOPMIN  0x51#define SYBAOPMAX  0x52#define DBTXPLEN 16#define BCPMAXERRS 1#define BCPFIRST 2#define BCPLAST 3#define BCPBATCH 4#define BCPLABELED 5#define BCPHINTS 6typedef int	 RETCODE;typedef void	 DBCURSOR;typedef void	 DBXLATE;typedef void	 DBSORTORDER;typedef void	 DBLOGINFO;typedef void	*DBVOIDPTR;typedef short	 SHORT;typedef unsigned short	USHORT;typedef int	(*INTFUNCPTR)();#ifndef __INCvxWorksh/* VxWorks already defines STATUS and BOOL. Compiler gets mad if you ** redefine them. *//* __INCvxWorksh will get #defined by std. include files included from tds.h*/#ifdef STATUS/* On DU4.0d we get a conflicting STATUS definition from arpa/nameser.h   when _REENTRANT is defined.*/#undef STATUS#endiftypedef int STATUS;typedef unsigned char BOOL ;#endiftypedef unsigned char DBBOOL ;typedef TDS_CHAR DBCHAR ;typedef unsigned char DBTINYINT ;typedef TDS_SMALLINT DBSMALLINT ;typedef TDS_INT DBINT	;typedef unsigned char DBBINARY ;typedef TDS_REAL DBREAL ;typedef TDS_FLOAT DBFLT8  ;typedef unsigned short DBUSMALLINT ;typedef TDS_NUMERIC DBNUMERIC ;typedef TDS_MONEY DBMONEY ;typedef TDS_MONEY4 DBMONEY4 ;typedef TDS_DATETIME DBDATETIME ;typedef TDS_DATETIME4 DBDATETIME4 ;#ifdef MSDBLIB#define SQLCHAR SYBCHAR#endiftypedef struct {void	*tds_login ;} LOGINREC;typedef unsigned char BYTE;typedef struct  dbtypeinfo{        DBINT   precision;        DBINT   scale;} DBTYPEINFO;typedef struct tag_DBPROC_ROWBUF{   int      buffering_on;    /* (boolean) is row buffering turned on?     */   int      first_in_buf;    /* result set row number of first row in buf */   int      next_row;        /* result set row number of next row         */   int      newest;          /* index of most recent item in queue        */   int      oldest;          /* index of least recent item in queue       */   int      elcount;         /* max element count that buffer can hold    */   int      element_size;    /* size in bytes of each element in queue    */   int      rows_in_buf;     /* # of rows currently in buffer             */#ifdef NCBI_FTDS   int      rows_offset;#endif   void    *rows;            /* pointer to the row storage                */} DBPROC_ROWBUF;typedef struct {	int	    host_column;    void    *host_var;	int	    datatype;	int	    prefix_len;	DBINT   column_len;	BYTE	*terminator;	int	    term_len;    int     tab_colnum;} BCP_HOSTCOLINFO;typedef struct {	int	         tab_colnum;	char	     db_name[256]; /* column name */	TDS_SMALLINT db_minlen;	TDS_SMALLINT db_maxlen;	TDS_SMALLINT db_colcnt; /* I dont know what this does */	TDS_TINYINT	 db_type;	TDS_TINYINT	 db_type_save;	TDS_SMALLINT db_usertype;	TDS_TINYINT	 db_varint_size;	TDS_INT		 db_length; /* size of field according to database */	TDS_TINYINT	 db_nullable;	TDS_TINYINT	 db_status;	TDS_SMALLINT db_offset;	TDS_TINYINT  db_default;	TDS_TINYINT  db_prec;	TDS_TINYINT  db_scale;    TDS_SMALLINT db_flags;	TDS_INT		 db_size; 	TDS_TINYINT  db_unicodedata;    char         db_collate[5];	long	data_size;	BYTE	*data;	int	    txptr_offset;} BCP_COLINFO;typedef struct {   TDSSOCKET	  *tds_socket ;      DBPROC_ROWBUF   row_buf;      int             noautofree;   int             more_results; /* boolean.  Are we expecting results? */   BYTE           *user_data;   /* see dbsetuserdata() and dbgetuserdata() */   unsigned char  *dbbuf; /* is dynamic!                   */   int             dbbufsz;   int             empty_res_hack;   TDS_INT         text_size;      TDS_INT         text_sent;   TDS_CHAR        *bcp_hostfile;   TDS_CHAR        *bcp_errorfile;   TDS_CHAR        *bcp_tablename;   TDS_CHAR        *bcp_insert_stmt;   TDS_INT         bcp_direction;   TDS_INT         bcp_colcount;   TDS_INT         host_colcount;   BCP_COLINFO     **bcp_columns;   BCP_HOSTCOLINFO **host_columns;   TDS_INT         firstrow;   TDS_INT         lastrow;   TDS_INT         maxerrs;   TDS_INT         bcpbatch;   TDS_INT         sendrow_init;   TDS_INT         var_cols;#ifdef NCBI_FTDS   TDS_INT         curr_text_col;#endif   DBTYPEINFO      typeinfo;   unsigned char   avail_flag;#ifdef NCBI_FTDS    char*          bcp_hint;#endif} DBPROCESS;typedef struct dbdaterec{#ifndef MSDBLIB	DBINT	dateyear;	DBINT	datemonth;	DBINT	datedmonth;	DBINT	datedyear;	DBINT	datedweek;	DBINT	datehour;	DBINT	dateminute;	DBINT	datesecond;	DBINT	datemsecond;	DBINT	datetzone;#else	DBINT	year;	DBINT	month;	DBINT	day;	DBINT	dayofyear;	DBINT	weekday;	DBINT	hour;	DBINT	minute;	DBINT	second;	DBINT	millisecond;	DBINT	tzone;#endif} DBDATEREC;typedef int (*EHANDLEFUNC) (DBPROCESS *dbproc, int severity, int dberr, int oserr, char *dberrstr, char *oserrstr);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -