S3PRow.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. // S3PRow.h: interface for the S3PRow class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_S3PROW_H__792EA5AF_C922_4DA3_838C_8F515F7CC3A0__INCLUDED_)
  5. #define AFX_S3PROW_H__792EA5AF_C922_4DA3_838C_8F515F7CC3A0__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "KStdAfx.h"
  10. #include <map>
  11. #include <string>
  12. typedef std::map<std::string, std::string> ColumnAndValue;
  13. class S3PDBConnection;
  14. class S3PRow  
  15. {
  16. public:
  17. int GetExpLikeInsertValue(std::string & exp);
  18. int GetExpLikeInsertKey(std::string & exp);
  19. S3PRow(const std::string & tableName, ColumnAndValue * pCAV, S3PDBConnection * pConn);
  20. virtual ~S3PRow();
  21. int GetExpLikeWhereAnd(std::string & exp);
  22. int GetExpLikeUpdate(std::string & exp);
  23. int GetExpLikeInsert(std::string & exp);
  24. protected:
  25. S3PRow(){};
  26. BOOL Init();
  27. BOOL IsNeedQuote(const std::string & column);
  28. int Quote(const std::string & value, std::string & outValue);
  29. int FixValue(const std::string & key, const std::string & value, std::string & outValue);
  30. protected:
  31. S3PDBConnection * m_pConn;
  32. ColumnAndValue  * m_pCAV;
  33. std::string       m_tableName;
  34. std::map<std::string, std::string> * m_columnInfoMap;
  35. };
  36. #endif // !defined(AFX_S3PROW_H__792EA5AF_C922_4DA3_838C_8F515F7CC3A0__INCLUDED_)