www.pudn.com > 使VC连接数据库变的更简单.rar > C_SQL.h


#include 
#include 
struct TimeStamp 
{ 
	short int year; 
	short int month; 
	short int day; 
	short int hour; 
	short int minute; 
	short int second; 
	unsigned long int fraction; 
}; 
 
class C_ResultSet   
{ 
private: 
		SQLHSTMT hOdbcStmt;//ODBC源 
	    SQLSMALLINT *CTypeArray;//字段类型 
		SQLINTEGER *ColLenArray;//字段长度 
		SQLINTEGER *RecLenArray;//记录长度 
		SQLINTEGER *OffsetArray; 
		void *DataPtr;//数据指针 
private: 
	   int AlignBuffer(int length); 
 public: 
	  void SetStmt(	SQLHSTMT  hOdbcStmt);//设置ODBC源 
	  SQLHSTMT GetStmt();//取ODBC源 
	  bool Open();//打开数据集 
	  bool Close(); 
	  int GetColumnCount();//取数据集字段数 
	  CString GetColumnName(int column);//取字段名 
	  CString GetColumnType(int column);//取字段类型 
	  int GetColumnLength(int column);//取字段长度 
	  int GetColumnDecimal(int column);//取小数位长度 
	  int MoveNext(); 
	  int MovePrior(); 
	  int MoveFirst(); 
	  int MoveLast(); 
	  int MovePosition(int position); 
	  CString GetString(int column); 
	  int GetInt(int Column); 
	  long GetLong(int column); 
	  float GetFloat(int column); 
	  double GetDouble(int column); 
	  TimeStamp GetDateTime(int column); 
	  bool GetBool(int column); 
}; 
class C_Connection   
{ 
public: 
	bool Open(CString DSN,CString UserID,CString UserPassword); 
	bool Update(CString sql); 
	bool Query(C_ResultSet *cr,CString dql); 
	bool Close(); 
private: 
	SQLHANDLE hOdbcEnv; 
   	SQLHANDLE hOdbcConn; 
 
};