p; CopyRight seesi,2001
//
// 说明:你可以随便在的
程序中任意使用、修改本代码,但请你不要删除文件头的部分说明。如果需要转载,请注明出处。
// msado15.dll必须放在本文件所在目录,或者自己指定下面的msado15.dll全路径
//
#if !defined(__AFXADO_H)
#import "msado15.dll" no_namespace rename ("EOF", "adoEOF") \
rename ("LockTypeEnum", "adoLockTypeEnum") \
rename ("DataTypeEnum", "adoDataTypeEnum") \
rename ("FieldAttributeEnum",
"adoFieldAttributeEnum") \
rename ("EditModeEnum", "adoEditModeEnum") \
rename ("RecordStatusEnum", "adoRecordStatusEnum")
\
rename ("ParameterDirectionEnum",
"adoParameterDirectionEnum")
#endif // !defined(__AFXADO_H)
class CBBAdoConnection
{
public:
CBBAdoConnection();
virtual ~CBBAdoConnection();
public:
int SetConnTimeOut(long lTimeOut); // 设置连接超时
int SetCommTimeOut(long lTimeOut); // 设置命令执行超时
BOOL IsConnectClose(); // 判断连接是否已经打开
int ExecuteSQL(LPCSTR szSQL); // 简单执行SQL语句,不返回记录集
// 打开数据库记录集
// 参数:
// strSQL 记录集的SQL语句
// rs 返回的记录集_RecordsetPtr对象
// sConnString 数据库的连接字符串
// 如果使用数据库连接已经打开,参数没用
// 如果数据库的连接没有打开,当给予一个连接字符串,将先打开数据库连接
BOOL OpenRecordset(CString strSQL, _RecordsetPtr *rs,CString sConnString="");//打开数据库记录集
BOOL OpenRecordset(const char *sSQL,_RecordsetPtr* rs,char* sConnString=NULL);
// 打开数据库连接
// 参数:
// strConnString 连接字符串
// sConnString 连接字符串
// bReOpen 是否重新打开,如果为FALSE,,
// 将先判断数据库是否打开如果没有打开则打开,
// 如果已经打开,将不执行任何操作
// 如果为TRUE,则无条件重新打开。
BOOL OpenConnection(CString strConnString ,BOOL bReOpen=FALSE);
BOOL OpenConnection(char* sConnString,BOOL bReOpen=FALSE); void CloseConnect();// 关闭数据库连接
BOOL ExecuteTrans(CStringArray arrStrSQL); // 事务处理,不返回任何记录集,参数为事务SQL数组
_ConnectionPtr* GetConnection(); // 得到_ConnectionPtr指针
CString GetConnString(); // 得到连接字符串
private:
enum ERRORFrom {
ErrFormOpenConnsction,
ErrFromOpenRecordset,
ErrFormCloseConnection,
ErrFormTanslation
};
_ConnectionPtr* m_pConn;
char m_szConnString[512];
///
protected:
void ReportError(int nERRORfrom);
};
class CBBRstValues
{
public:
// 三种构造类的方法
// 如果无参数构