c++操作数据库,效率比其他的语言相对会快一点,尤其是操作大数据。
#pragma once
/*
C++ Access数据库操作
QQ:728297725
*/
#ifndef YXB_CCONNECTION_H_H
#define YXB_CCONNECTION_H_H
// include flies //
//#include <afx.h>
#include "ADOCONST.h"
using namespace ADOCONST;
class CConnection
{
private:
_ConnectionPtr m_pConn;
CString m_sErrorMessage; //used to save error message
//Construction/Destruction //
public:
CConnection();
virtual ~CConnection();
// Property Get/Set Method //
public:
//Property: ConnectionString
CString GetConnectionString() const;
void SetConnectionString(char * charConn);
void SetConnectionString(CString strConn);
//Property: ConnectionTimeout
long GetConnectionTimeout() const;
void SetConnectionTimeout(long time);
//Property: CursorLocation
CursorLocationEnum GetCursorLocation() const;
void SetCursorLocation(CursorLocationEnum CursorLocation);
//Property: CommandTimeout
long GetCommandTimeout() const;
void SetCommandTimeout(long time);
//Property: State
ObjectStateEnum GetState() const;
//Property: m_sErrorMessage
CString GetErrorMessage() const;
//Property: m_pConn
_ConnectionPtr GetConnection() const;
// Core Method //
public:
bool Open(const CString strPath/*数据库的路径*/, CString UserID = L"", CString Password = L"", ConnectOptionEnum ConnectOption = ConnectOption::adConnectUnspecified);
bool OpenEx(const CString& ConnectionString/*数据库的连接串*/, CString UserID = L"", CString Password = L"", ConnectOptionEnum ConnectOption = ConnectOption::adConnectUnspecified);//ID和Password为空,因为要再连接字符串中去指明ID和密码
bool Close();
bool Cancel();
void Release();
bool RollbackTrans();
bool CommitTrans();
long BeginTrans();
};
#endif // #ifndef YXB_CONNECTION_H_H