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

📄 cstypes.h

📁 SQLAPI C/C++ 连接Oracle 数据库!
💻 H
📖 第 1 页 / 共 3 页
字号:
{	CS_CHAR		name[CS_MAX_NAME];	CS_INT		namelen;	CS_INT		datatype;	CS_INT		format;	CS_INT		maxlength;	CS_INT		scale;	CS_INT		precision;	CS_INT		status;	CS_INT		count;	CS_INT		usertype;	CS_LOCALE	*locale;} CS_DATAFMT;#elsetypedef struct _cs_datafmt{	CS_CHAR		name[CS_MAX_CHAR];	CS_INT		namelen;	CS_INT		datatype;	CS_INT		format;	CS_INT		maxlength;	CS_INT		scale;	CS_INT		precision;	CS_INT		status;	CS_INT		count;	CS_INT		usertype;	CS_LOCALE	*locale;} CS_DATAFMT;#endif/*** The object name structure used by Client-Library cs_object() API.	**** thinkexists 		indicates whether the application expects **			this object to exist. **** object_type		The type of the object. This field is the **			first part of a 5-part key.**** last_name		The `last name' associated with the object of **			interest, if any. This field is the second **			part of a 5-part key.**** lnlen		The length, in bytes, of last_name.**** first_name		The `first name' associated with the object of **			interest, if any. This field is the third part **			of a 5-part key.**** fnlen		The length, in bytes, of first_name.**** scope		Data that describes the scope of the object. **			This field is the fourth part of a 5-part key.**** scopelen		The length, in bytes, of scope. **** thread		Platform-specific data that is used to distinguish **			threads in a multi-threaded execution environment.**			This field is the fifth part of a 5-part key.**** threadlen		The length, in bytes, of thread. */#if defined(CS_NO_LARGE_IDENTIFIERS)/* ** In pre-15.0 versions the (old) value for CS_MAX_NAME was used for the** name array declarations. Starting from version 15.0, CS_MAX_CHAR is** used to define these character array sizes.*/typedef struct _cs_objname{	CS_BOOL		thinkexists;	CS_INT		object_type;	CS_CHAR		last_name[CS_MAX_NAME];	CS_INT		lnlen;	CS_CHAR		first_name[CS_MAX_NAME];	CS_INT		fnlen;	CS_VOID		*scope;	CS_INT		scopelen;	CS_VOID		*thread;	CS_INT		threadlen;} CS_OBJNAME;#elsetypedef struct _cs_objname{	CS_BOOL		thinkexists;	CS_INT		object_type;	CS_CHAR		last_name[CS_MAX_CHAR];	CS_INT		lnlen;	CS_CHAR		first_name[CS_MAX_CHAR];	CS_INT		fnlen;	CS_VOID		*scope;	CS_INT		scopelen;	CS_VOID		*thread;	CS_INT		threadlen;} CS_OBJNAME;#endif/*** The object data structure used by Client-Library cs_object() API.	**** actuallyexists	Indicates whether this object actually exists. **			cs_objects sets actuallyexists to CS_TRUE **			if it finds a matching object.  **			cs_objects sets actuallyexists to CS_FALSE **			if it does not find a matching object.**** connection		A pointer to the CS_CONNECTION structure **			representing the connection in which the object exists.**** command		A pointer to the CS_COMMAND structure representing the **			command space with which the object is associated, **			if any.**** buffer		A pointer to data space. An application can **			use buffer to associate data with a saved object.**** buflen		The length, in bytes, of *buffer. ** */typedef struct _cs_objdata{	CS_BOOL		actuallyexists;	CS_CONNECTION	*connection;	CS_COMMAND	*command;	CS_VOID		*buffer;	CS_INT		buflen;} CS_OBJDATA;/*** Typedef to make using session ids more convenient.*/typedef CS_BYTE	CS_SESSIONID[6];/*** Definition of a pointer to a function for all conversion routines.*/CS_START_EXTERN_Ctypedef CS_RETCODE	(CS_PUBLIC * CS_CONV_FUNC)PROTOTYPE((						CS_CONTEXT *context,						CS_DATAFMT *srcfmt,						CS_VOID *src,						CS_DATAFMT *destfmt,						CS_VOID *dest,						CS_INT *destlen						));/*** Pointers to the thread primitive functions used in Open Client.*/typedef CS_RETCODE	(CS_PUBLIC * CS_THRDM_FUNC)PROTOTYPE((						CS_THRDRES *resource						));typedef CS_RETCODE	(CS_PUBLIC * CS_THRDE_FUNC)PROTOTYPE((						CS_THRDRES *resource						));typedef CS_RETCODE	(CS_PUBLIC * CS_THRDC_FUNC)PROTOTYPE((						CS_THRDRES **resource						));typedef CS_RETCODE	(CS_PUBLIC * CS_THRDW_FUNC)PROTOTYPE((						CS_THRDRES *resource,						CS_INT millisecs						));typedef CS_RETCODE	(CS_PUBLIC * CS_THRDID_FUNC)PROTOTYPE((						CS_VOID *buffer,						CS_INT buflen,						CS_INT *outlen						));CS_END_EXTERN_C/*** Define the thread primitive structure. This structure is used by** application programs to pass thread primitives into Client-Library.** These primitives are used internally in Client-Library to run in a** threaded environment.**** create_mutex_fn	Create a recursive mutex.**** delete_mutex_fn	Delete a mutex.**** take_mutex_fn	Lock a mutex.**** release_mutex_fn	Release a mutex.**** create_event_fn	Create an event variable.**** delete_event_fn	Delete an event variable.**** signal_event_fn	Signal event variable.**** reset_event_fn	Reset event variable.**** waitfor_event_fn	Wait for event to be signaled.**** thread_id_fn		Return id of currently executing thread.*/typedef struct _cs_thread{	CS_THRDC_FUNC	create_mutex_fn;	CS_THRDM_FUNC	delete_mutex_fn;	CS_THRDM_FUNC	take_mutex_fn;	CS_THRDM_FUNC	release_mutex_fn;	CS_THRDC_FUNC	create_event_fn;	CS_THRDE_FUNC	delete_event_fn;	CS_THRDE_FUNC	signal_event_fn;	CS_THRDE_FUNC	reset_event_fn;	CS_THRDW_FUNC	waitfor_event_fn;	CS_THRDID_FUNC	thread_id_fn;} CS_THREAD;/*** Directory Service definitions*//*** Token name for predefined OID strings.*/#define CS_OID_SYBASE		"1.3.6.1.4.1.897"#define CS_OID_DIRECTORY	"1.3.6.1.4.1.897.4"#define CS_OID_OBJCLASS		"1.3.6.1.4.1.897.4.1"#define CS_OID_ATTRTYPE		"1.3.6.1.4.1.897.4.2"#define CS_OID_ATTRSYNTAX	"1.3.6.1.4.1.897.4.3"#define CS_OID_OBJSERVER	"1.3.6.1.4.1.897.4.1.1"#define CS_OID_ATTRVERSION	"1.3.6.1.4.1.897.4.2.1"#define CS_OID_ATTRSERVNAME	"1.3.6.1.4.1.897.4.2.2"#define CS_OID_ATTRSERVICE	"1.3.6.1.4.1.897.4.2.3"#define CS_OID_ATTRSTATUS	"1.3.6.1.4.1.897.4.2.4"#define CS_OID_ATTRADDRESS	"1.3.6.1.4.1.897.4.2.5"#define CS_OID_ATTRSECMECH	"1.3.6.1.4.1.897.4.2.6"#define CS_OID_ATTRRETRYCOUNT	"1.3.6.1.4.1.897.4.2.7"#define CS_OID_ATTRLOOPDELAY	"1.3.6.1.4.1.897.4.2.8"#define CS_OID_ATTRJCPROTOCOL	"1.3.6.1.4.1.897.4.2.9"#define CS_OID_ATTRJCPROPERTY	"1.3.6.1.4.1.897.4.2.10"#define CS_OID_ATTRDATABASENAME	"1.3.6.1.4.1.897.4.2.11"#define CS_OID_ATTRHAFAILOVER	"1.3.6.1.4.1.897.4.2.15"#define CS_OID_ATTRRMNAME	"1.3.6.1.4.1.897.4.2.16"#define CS_OID_ATTRRMTYPE	"1.3.6.1.4.1.897.4.2.17"#define CS_OID_ATTRJDBCDSI	"1.3.6.1.4.1.897.4.2.18"#define CS_OID_ATTRSERVERTYPE	"1.3.6.1.4.1.897.4.2.19"/*** Current status of server object.*/#define CS_STATUS_ACTIVE	(CS_INT)1#define CS_STATUS_STOPPED	(CS_INT)2#define CS_STATUS_FAILED	(CS_INT)3#define CS_STATUS_UNKNOWN	(CS_INT)4/*** Server object access type*/#define CS_ACCESS_CLIENT	(CS_INT)1#define CS_ACCESS_ADMIN		(CS_INT)2#define CS_ACCESS_MGMTAGENT	(CS_INT)3#define CS_ACCESS_CLIENT_QUERY          (CS_INT)1#define CS_ACCESS_CLIENT_MASTER         (CS_INT)2#define CS_ACCESS_ADMIN_QUERY           (CS_INT)3#define CS_ACCESS_ADMIN_MASTER          (CS_INT)4#define CS_ACCESS_MGMTAGENT_QUERY       (CS_INT)5#define CS_ACCESS_MGMTAGENT_MASTER      (CS_INT)6/*** String Attribute Value****	This structure is used to describe a string attribute**	value.****	str_length	Length of string.**	str_buffer	String data.*/typedef struct _cs_string{	CS_INT	str_length;	CS_CHAR	str_buffer[CS_MAX_DS_STRING];} CS_STRING;/*** Transport Address attribute value****	This structure is used to describe a server address attribute**	value. ****	addr_accesstype		Access type provided on transport**				address.**	addr_trantype		Transport address type**	addr_tranaddress	The address string.*/typedef struct _cs_tranaddr{	CS_INT		addr_accesstype;	CS_STRING	addr_trantype;	CS_STRING	addr_tranaddress;} CS_TRANADDR;/*** Object Identifier**	**	This structure is used to represent an Object **		Identifier.****	oid_length	Length of Object Identifier.**	oid_buffer	Buffer containing object identifier.*/typedef struct _cs_oid{	CS_INT	oid_length;	CS_CHAR	oid_buffer[CS_MAX_DS_STRING];} CS_OID;/*** Attribute Value**	**	This union is used to represent an attribute value.***/typedef union _cs_attrvalue{	CS_STRING	value_string;	CS_BOOL		value_boolean;	CS_INT		value_enumeration;	CS_INT		value_integer;	CS_OID		value_oid;	CS_TRANADDR	value_tranaddr;} CS_ATTRVALUE;/*** Attribute **	**	This structure describes an attribute. ***/typedef struct _cs_attribute{	CS_OID		attr_type;	CS_INT		attr_syntax;	CS_INT		attr_numvals;} CS_ATTRIBUTE;/*** Syntax identifier tokens for the CS_ATTRIBUTE union.*/#define CS_ATTR_SYNTAX_NOOP		(CS_INT) 0#define CS_ATTR_SYNTAX_STRING		(CS_INT) 1#define CS_ATTR_SYNTAX_INTEGER		(CS_INT) 2#define CS_ATTR_SYNTAX_BOOLEAN		(CS_INT) 3#define CS_ATTR_SYNTAX_ENUMERATION	(CS_INT) 4#define CS_ATTR_SYNTAX_TRANADDR		(CS_INT) 5#define CS_ATTR_SYNTAX_OID		(CS_INT) 6/* **	Structure for defining directory lookup criteria when using**	ct_ds_lookup api.*/typedef struct _cs_ds_lookup_info{	CS_OID 		*objclass;	CS_CHAR 	*path;	CS_INT		pathlen;	CS_DS_OBJECT	*attrfilter;	CS_DS_OBJECT	*attrselect;} CS_DS_LOOKUP_INFO;/*** Predefined signal handlers for client and server signal handler** libraries.*/#define CS_SIGNAL_IGNORE	-1#define CS_SIGNAL_DEFAULT	-2#define CS_ASYNC_RESTORE	-3#define CS_SIGNAL_BLOCK		-4#define CS_SIGNAL_UNBLOCK	-5#endif /* __CSTYPES_H__ */

⌨️ 快捷键说明

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