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

📄 error.h

📁 C++OCI,针对8.0.4以上的数据库
💻 H
字号:
// Error.h: interface for the CError class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_ERROR_H__4D87656B_A532_4798_ABAA_F3D9D4A6372E__INCLUDED_)
#define AFX_ERROR_H__4D87656B_A532_4798_ABAA_F3D9D4A6372E__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

//-------------所有成功的代码-----------------------------
#define GW_SUCCESS 0x00000000 

//-------------系统内存处理失败---------------------------
#define ERR_SYS_MEM_ALLOC  0x00002000  //无法开辟内存空间
#define ERR_POINT_INVAILD  0x00002001  //无效指针

//-------------oracle的错误标识----------------------------
#define ERR_OCI_OLOG_73           0x00001000  //7.3以上登录失败
#define ERR_OCI_OLOG_8I           0x00001001  //8.0和8i以上的登录失败
#define ERR_OCI_INIT_8I           0x00001002  //初始化失败 
#define ERR_OCI_ENDPROC_8I        0x00001003  //无法结束OCI的进程
#define ERR_OCI_ENV_8I            0x00001004  //无法分配环境空间 
#define ERR_OCI_SVC_8I            0x00001005  //无法分配服务上下文的空间
#define ERR_OCI_STMT_8I           0x00001006  //无法分配语句句柄的空间
#define ERR_OCI_ERRH_8I           0x00001007  //无法分配错误句柄的空间
#define ERR_OCI_TACHI_8I          0x00001008  //无法把8I的句柄变为7.3.3
#define ERR_OCI_SRV_8I            0x00001009  //无法分配服务器的句柄空间
#define ERR_OCI_SESSION_8I        0x0000100A  //无法分配会话句柄空间
#define ERR_OCI_HANDLE_NO_INIT    0x0000100B  //OCI句柄没有初始化
#define ERR_OCI_SERVER_ATTACH     0x0000100C  //无法连接指定的数据源
#define ERR_OCI_ATT_SESSION_UID   0x0000100D  //无法对会话句柄添加用户名
#define ERR_OCI_ATT_SESSION_PWD   0x0000100E  //无法对会话句柄添加密码 
#define ERR_OCI_SESSION_END       0x0000100F  //无法断开与oracle的会话
#define ERR_OCI_DETACH            0x00001010  //无法断开与oracle服务器的连接
#define ERR_OCI_ATT_SES_IN_SVC    0x00001011  //无法把会话句柄的属性加载到服务句柄中
#define ERR_OCI_OLOG_8I_EXCEP     0x00001012  //登录8i异常
#define ERR_OCI_ATT_SRV_IN_SVC    0x00001013  //无法在服务(连接)句柄中加入服务器句柄的属性 


//-------------常量定义-----------------------------------
#define ERRINFO_MAX_LEN  512  //错误提示的长度
#define LOB_MAXBUFFLEN   32766 //每次读写LOB数据的缓冲的最大长度

class CError  
{
public:
	CError();
	virtual ~CError();
protected:
	// 错误的提示串
	char m_szErrStrArr[512];
	//错误代码
	int m_nErrCode;
public:
	// 设置错误信息字串
	void SetErrStr(char * pszErrStr);
	// 获得最近的错误信息字串
	void GetLastErrStr(char * pszErrStr);
	void SetErrCode(int nErrCode);
	// 获得最近的错误代码
	int GetLastErrCode(void);

};

#endif // !defined(AFX_ERROR_H__4D87656B_A532_4798_ABAA_F3D9D4A6372E__INCLUDED_)

⌨️ 快捷键说明

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