DBCheck.h
上传用户:swkcbjrc
上传日期:2016-04-02
资源大小:45277k
文件大小:2k
源码类别:

游戏

开发平台:

Visual C++

  1. //DBCheck.h文件内容如下:
  2. // DBCheck.h: interface for the CDBCheck class.
  3. // 类名:CDBCheck
  4. // 作用:该类对用户的信息进行存储和提取数据库
  5. #if _MSC_VER > 1000
  6. #pragma once
  7. #endif // _MSC_VER > 1000
  8. #define Alert(x) printf(x)
  9. //当前用户信息结构
  10. typedef struct _NODECURUSERINFO
  11. {
  12. CString strUserName;//用户名称
  13. int nUserLevel;//级别
  14. CString strUserSex;//性别
  15. int nUserScore;//用户积分
  16. int nTotalCardCount;//总牌数
  17. int nBreakNetCount;//短线次数
  18. int nVictoryCount;//胜利次数
  19. CString strEnterText;//进入语
  20. CString strExitText;//退出语
  21. BOOL bShowRegardText;//是否显示其他玩家的问候语
  22. BOOL bShowMoveText;//是否显示其他玩家转移的语言
  23. BOOL bShowEnemyText;//是否显示敌人的语言
  24. BOOL bShowSysInfo;//是否显示所有系统提示语言
  25. float fRoomBreakRate;//创建房间的断线率
  26. int nRoomNetSpeed;//创建房间的网速
  27. int nRoomPlayNum;//创建房间的最多人数
  28. int nRoomTableNum;//创建房间的桌子数量
  29. CString strRoomName;//房间名称
  30. BOOL bTableBreakRate;//牌桌设置断线率
  31. BOOL bTableDislike;//牌桌设置不喜欢用户是否可以同桌
  32. BOOL bTableNetRate;//桌网速是否同桌
  33. float fTableBreakRate;//断线率
  34. int nTableNetRate;//桌网速
  35. CString strAllFriend;//朋友列表
  36. CString strAllEnemy;//敌人列表
  37. int nLossCount;//输次数
  38. int nEqualCount;//平次数
  39. BOOL bAgreeLook;//是否允许旁观
  40. }NODECURUSERINFO,*LPNODECURUSERINFO;
  41. class CDBCheck  
  42. {
  43. public:
  44. CDBCheck(CString strConn);
  45. virtual ~CDBCheck();
  46. public:
  47. //验证用户信息
  48. BOOL IsUserValid(CString strUserId,CString strPassWord,LPNODECURUSERINFO lpNodeCurUserInfo);
  49. //更新数据库记录
  50. BOOL DoUpdateRecordset(CString strUserId,LPNODECURUSERINFO lpNodeCurUserInfo);
  51. private:
  52. //打开数据库
  53. BOOL DoOpenDatabase();
  54. //关闭数据库
  55. void DoCloseDatabase();
  56. //执行SQL
  57. BOOL DoExecuteSQL(CString strSQL);
  58. //打开记录集
  59. BOOL DoOpenRecordset(UINT nOpenType ,CString strSQL, DWORD dwOptions);
  60. //关闭记录集
  61. void DoCloseRecordset();
  62. //设置用户信息
  63. void SetCurUserInfo(LPNODECURUSERINFO lpNodeCurUserInfo,CString strUserName);
  64. BOOL GetFieldString (CString strFieldName,int &nFieldValue);
  65. //取得字段
  66. BOOL GetFieldString (CString strFieldName,CString &strFieldValue);
  67. private:
  68. //ODBC连接串
  69. CString m_strConnectString; 
  70. //SQL语句
  71. CString m_strSQL; 
  72. //数据库对象
  73. CDatabase m_database; 
  74. //记录及对象
  75. CRecordset m_recordset; 
  76. };