adodb.h

来自「以SQL语句从数据库里查询出记录」· C头文件 代码 · 共 74 行

H
74
字号
//adodb.h
#ifndef _ADO_DB_H_
#define _ADO_DB_H_
//仿ADO参数结构
typedef struct tagADOParameter
{
	char cParamName[50];	//参数名称
	int iParamType;			//参数类型
	int iParamDirection;	//参数输入输出方向
	long lParamSize;		//参数长度
	_variant_t vParamValue;	//参数值
}ADOPARAMETER,*LPADOPARAMETER;

class CAdoDb
{
	InitSystem Initsys;
public:
	static char m_szConnection[1500];
public:
//	CAdoDb(LPCSTR lpcszConnection="");
	CAdoDb();
	~CAdoDb();
	static void SetConnectionString(LPCSTR lpcszConnection)
	{strcpy(m_szConnection,lpcszConnection);};
public:
	_RecordsetPtr Execute(CString strSQL,long *plRecordsAffected,long Options = adCmdText);
	BOOL ExecuteNoRec(CString strSQL);
private:
	//数据库操作函数
	BOOL OpenConnection();
	CString GetLastError();
	int GetErrorCode(void);
	void CAdoDb::SetErrorCode(const int nErrorCode);
	BOOL CloseConnection();
	void RollBackTransaction();
	BOOL CommitTransaction();
	BOOL BeginTransaction();	
	BOOL ExecuteProduce(LPCSTR lpcszProduceName, const LPADOPARAMETER lpParamArray=NULL, const int nCount=0);
public:
	_ConnectionPtr GetConnection();
	CString GetMaxSerialNo(CString strTableName,CString strVarcharFieldName);

protected:
	_ConnectionPtr m_pConnection;
	int m_nErrorCode;
	CString m_strLastError;
	int GetObjectState();
public:
	//常用函数
	CString g_GetTodayString();

	
public:
	BOOL GetValueByIndex(CString strFieldIndex,CString strValueField,CString strTableName,CString strIndexValue,CString &strValue);
	//////////////////////////////////////////////////////////////////////////
	// 使用以下函数需要注意一个默认规则:数据库表必须有一个ID字段,该字段具有自动
	// 填写功能。

	// 得到一条记录。如果有多条记录,那么在arrValues里面只有一条记录,其他记录第二个字段
	// 记录在arrCondition变量里面。
	BOOL GetRecordValues(CString strSQL, CStringArray &arrValues);
	// 修改当前记录数据
	BOOL AmendRecordValues(CString strSQL, CStringArray &arrValues);

	// 追加一个记录数据
	BOOL AddRecordValues(CString strSQL, CStringArray &arrValues);

	CString Format(_variant_t var);

	BOOL QueryToListCtrl(CString strSQL,CListCtrl *pListCtrl);
	BOOL QueryToComboBox(CString strSQL,CComboBox *pCombo);
	BOOL QueryToListBox(CString strSQL,CListBox *pListBox);
};
#endif	//_ADO_DB_H_

⌨️ 快捷键说明

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