📄 ocilib_internal.h
字号:
);
/* ------------------------------------------------------------------------ *
* lob.c
* ------------------------------------------------------------------------ */
OCI_Lob * OCI_LobInit
(
OCI_Connection *con,
OCI_Lob **plob,
OCILobLocator *handle,
ub4 type
);
/* ------------------------------------------------------------------------ *
* long.c
* ------------------------------------------------------------------------ */
OCI_Long * OCI_LongInit
(
OCI_Statement *stmt,
OCI_Long **plg,
OCI_Define *def,
unsigned int type
);
/* ------------------------------------------------------------------------ *
* memory.c
* ------------------------------------------------------------------------ */
void * OCI_MemAlloc
(
int ptr_type,
int block_size,
int block_count,
boolean zero_fill
);
void * OCI_MemRealloc
(
void * ptr_mem,
int ptr_type,
int block_size,
int block_count
);
void OCI_MemFree
(
void * ptr_mem
);
sword OCI_HandleAlloc
(
CONST dvoid *parenth,
dvoid **hndlpp,
CONST ub4 type,
CONST size_t xtramem_sz,
dvoid **usrmempp
);
sword OCI_HandleFree
(
dvoid *hndlp,
CONST ub4 type
);
sword OCI_DescriptorAlloc
(
CONST dvoid *parenth,
dvoid **descpp,
CONST ub4 type,
CONST size_t xtramem_sz,
dvoid **usrmempp
);
sword OCI_DescriptorFree
(
void *descp, CONST ub4 type
);
sword OCI_ObjectNew
(
OCIEnv *env,
OCIError *err,
CONST OCISvcCtx *svc,
OCITypeCode typecode,
OCIType *tdo,
dvoid *table,
OCIDuration duration,
boolean value,
dvoid **instance
);
sword OCI_OCIObjectFree
(
OCIEnv *env,
OCIError *err,
dvoid *instance,
ub2 flags
);
/* ------------------------------------------------------------------------ *
* mutex.c
* ------------------------------------------------------------------------ */
OCI_Mutex * OCI_MutexCreateInternal(void);
/* ------------------------------------------------------------------------ *
* number.c
* ------------------------------------------------------------------------ */
boolean OCI_NumberGet
(
OCI_Connection *con,
OCINumber *data,
void *value,
uword size,
uword flag)
;
boolean OCI_NumberSet
(
OCI_Connection *con,
OCINumber *data,
void *value,
uword size,
uword flag
);
boolean OCI_NumberConvertStr
(
OCI_Connection *con,
OCINumber *num,
const dtext *str,
int str_size,
const mtext* fmt,
ub4 fmt_size
);
boolean OCI_NumberGetFromStr
(
OCI_Connection *con,
void *value,
uword size,
uword type,
const dtext *str,
int str_size,
const mtext* fmt,
ub4 fmt_size
);
/* ------------------------------------------------------------------------ *
* object.c
* ------------------------------------------------------------------------ */
void OCI_ObjectReset
(
OCI_Object *obj
);
boolean OCI_ObjectGetAttr
(
OCI_Object *obj,
const mtext *attr,
void ** p_value,
OCIInd* p_ind,
OCIType **p_tdo
);
boolean OCI_ObjectSetAttr
(
OCI_Object *obj,
const mtext *attr,
void * value,
OCIInd ind
);
boolean OCI_ObjectSetNumber
(
OCI_Object *obj,
const mtext *attr,
void *value,
uword size, uword flag
);
boolean OCI_ObjectGetNumber
(
OCI_Object *obj,
const mtext *attr,
void *value,
uword size, uword flag
);
int OCI_ObjectGetIndex
(
OCI_Object *obj,
const mtext *attr,
int type
);
ub2 OCI_GetIndTabIndex
(
OCI_TypeInfo *typeinf,
int index
);
OCI_Object * OCI_ObjectInit
(
OCI_Connection *con,
OCI_Object **pobj,
void *handle,
OCI_TypeInfo *typeinf,
sb2 *tab_ind,
int index,
boolean reset
);
/* ------------------------------------------------------------------------ *
* ref.c
* ------------------------------------------------------------------------ */
OCI_Ref * OCI_RefInit
(
OCI_Connection *con,
OCI_TypeInfo *typeinf,
OCI_Ref **pref,
void *handle
);
boolean OCI_RefPin
(
OCI_Ref *ref
);
boolean OCI_RefUnpin
(
OCI_Ref *ref
);
/* ------------------------------------------------------------------------ *
* resultset.c
* ------------------------------------------------------------------------ */
OCI_Resultset * OCI_ResultsetCreate
(
OCI_Statement *stmt,
int size
);
boolean OCI_ResultsetFree
(
OCI_Resultset *rs
);
boolean OCI_FetchPieces
(
OCI_Resultset *rs
);
boolean OCI_FetchData
(
OCI_Resultset *rs,
int mode,
int offset,
boolean *err
);
boolean OCI_FetchCustom
(
OCI_Resultset *rs,
int mode,
int offset,
boolean *err
);
#ifdef OCI_CHECK_DATASTRINGS
boolean OCI_ResultsetExpandStrings
(
OCI_Resultset *rs
);
#endif
/* ------------------------------------------------------------------------ *
* statement.c
* ------------------------------------------------------------------------ */
boolean OCI_BindFreeAll
(
OCI_Statement *stmt
);
boolean OCI_BindCheck
(
OCI_Statement *stmt
);
boolean OCI_BindReset
(
OCI_Statement *stmt
);
boolean OCI_BindData
(
OCI_Statement *stmt,
void *data,
ub4 size,
const mtext *name,
ub1 type,
unsigned int code,
unsigned int mode,
unsigned int subtype,
OCI_TypeInfo *typinf,
unsigned int nbelem
);
int OCI_BindGetIndex
(
OCI_Statement *stmt,
const mtext *name
);
boolean OCI_FetchIntoUserVariables
(
OCI_Statement *stmt,
va_list args
);
boolean OCI_StatementReset
(
OCI_Statement *stmt
);
boolean OCI_StatementClose
(
OCI_Statement *stmt
);
OCI_Statement * OCI_StatementInit
(
OCI_Connection *con,
OCI_Statement **pstmt,
OCIStmt *handle,
OCI_Define *def
);
/* ------------------------------------------------------------------------ *
* string.c
* ------------------------------------------------------------------------ */
int OCI_StringCopy4to2bytes
(
const unsigned int* src,
int src_size,
unsigned short* dst,
int dst_size
);
int OCI_StringCopy2to4bytes
(
const unsigned short* src,
int src_size,
unsigned int* dst,
int dst_size
);
void * OCI_GetInputString
(
void *src,
int *size,
int size_char_in,
int size_char_out
);
void OCI_GetOutputString
(
void *src,
void *dest,
int *size,
int size_char_in,
int size_char_out
);
void OCI_MoveString
(
void *src,
void *dst,
int char_count,
int size_char_in,
int size_char_out
);
void OCI_ConvertString
(
void *str,
int char_count,
int size_char_in,
int size_char_out
);
void OCI_CopyString
(
void *src,
void *dest,
int *size,
int size_char_in,
int size_char_out
);
void OCI_ReleaseMetaString
(
void *ptr
);
void OCI_ReleaseDataString
(
void *ptr
);
int OCI_StringLength
(
void *ptr,
int size_elem
);
#define OCI_GetInputMetaString(s, n) OCI_GetInputString((void *) s, n, \
sizeof(mtext), \
sizeof(omtext))
#define OCI_GetOutputMetaString(s, d, n) OCI_GetOutputString((void *) s, d, n, \
sizeof(omtext), \
sizeof(mtext))
#define OCI_GetInputDataString(s, n) OCI_GetInputString((void *) s, n, \
sizeof(dtext), \
sizeof(odtext))
#define OCI_GetOutputDataString(s, d, n) OCI_GetOutputString((void *) s, d, n, \
sizeof(odtext), \
sizeof(dtext))
void * OCI_StringFromStringPtr
(
OCIString *str,
void ** buf,
int *buflen
);
boolean OCI_StringToStringPtr
(
OCIString **str,
OCIError *err,
void *value,
void **buf,
int *buflen
);
/* ------------------------------------------------------------------------ *
* thread.c
* ------------------------------------------------------------------------ */
void OCI_ThreadProc
(
dvoid *arg
);
/* ------------------------------------------------------------------------ *
* threadkey.c
* ------------------------------------------------------------------------ */
OCI_ThreadKey * OCI_ThreadKeyCreateInternal
(
POCI_THREADKEYDEST destfunc
);
boolean OCI_ThreadKeyFree
(
OCI_ThreadKey *key
);
boolean OCI_ThreadKeySet
(
OCI_ThreadKey *key,
void *value
);
boolean OCI_ThreadKeyGet
(
OCI_ThreadKey* key,
void **value
);
/* ------------------------------------------------------------------------ *
* timestamp.c
* ------------------------------------------------------------------------ */
OCI_Timestamp * OCI_TimestampInit
(
OCI_Connection *con,
OCI_Timestamp **ptmsp,
OCIDateTime *buffer,
ub4 type
);
/* ------------------------------------------------------------------------ *
* transaction.c
* ------------------------------------------------------------------------ */
boolean OCI_TransactionClose
(
OCI_Transaction * trans
);
/* ------------------------------------------------------------------------ *
* typeinf.c
* ------------------------------------------------------------------------ */
boolean OCI_TypeInfoClose
(
OCI_TypeInfo *typeinf
);
#ifdef __cplusplus
}
#endif
#endif /* OCILIB_COMMON_FUNCTIONS_H_INCLUDED */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -