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

📄 dbclient.h

📁 oracle oci 轻量级封装库,很方便和实用!适合于简单的数据库操作.绝对精品.垃圾就不上传了.
💻 H
字号:
#ifndef _DBCLIENT_H
#define _DBCLIENT_H

#ifdef DBCLIENT_EXPORTS
#define DBCLIENT_API __declspec(dllexport)
#else
#define DBCLIENT_API __declspec(dllimport)
#endif

#include <oci.h>

/*
** Include the ObList-Library header file.
*/
#include "oblist.h"

#define username		"energyuser"
#define password		"ffffff"
#define servicename		"db250"

#define	 MAX_SELECT_LIST_SIZE   256
#define  MAX_ITEM_BUFFER_SIZE   128
/* Declare structures for query information. */
typedef struct _cs_datefmt
{
    sb4             maxlength;
    sb2             datatype;
    sb1             name[MAX_ITEM_BUFFER_SIZE];
    sb4             namelen;
    sb4             dsize;
    sb2             precision;
    sb2             scale;
    sb2             status;

} CS_DATAFMT;

typedef struct _column_data 
{
    ub1             *value;
    sb2             valuelen;
    ub2             col_retlen, col_retcode;
}COLUMN_DATA;

DBCLIENT_API int Connect();
DBCLIENT_API int Connect(char *user,char *pass,	char *service);
DBCLIENT_API void DisConnect();

DBCLIENT_API int ExecCommand(char* cmdbuf);

class DBCLIENT_API Record :public DBObject
{
public:
	Record(void);
	~Record();
protected:
	int			column_num;	
	COLUMN_DATA *columndata;

public:
	void	SetFieldsCount(int colnum){column_num=colnum;};
	void	AllocField(int nIndex,int length);
	void	AllocRecord(int colnum);
	int		SetFieldValue(int nIndex,COLUMN_DATA data);

public:
	int		GetFieldsCount(){return column_num;};
	char*	GetFieldValue(int nIndex);

};

class DBCLIENT_API RecordSet :public ObList
{
public:
	RecordSet(void);
	~RecordSet();
protected:
	char*	m_szSql;
	int		m_nColNum;
protected:
	void	ResetRecords();
public:
	CS_DATAFMT*	datafmt;
	int		Open(char* sql=NULL);
	int		GetRecordsCount(){return GetCount();};
	int		GetFieldsCount(){return m_nColNum;};
	Record* GetRecord(int nIndex);
	void    SetRecord(int nIndex,Record* pRecord);

	char*	GetFieldName(int nField);
	int		GetFieldID(char* szField);

	char*	GetValue(int nRecord,int nField);
	char*	GetValueEx(int nRecord,char* szField);

	int	SetValue(int nRecord,int nField,char* szValue);
	int	SetValueEx(int nRecord,char* szField,char* szValue);

public:
	void	SetFieldsCount(int colnum){m_nColNum=colnum;};
	void	SetRecordsCount(int num){SetCount(num);};
	void	AddRecord(COLUMN_DATA* data);
};


#endif

⌨️ 快捷键说明

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