Client.cpp
上传用户:biney012
上传日期:2022-05-09
资源大小:4592k
文件大小:4k
源码类别:

数据库系统

开发平台:

Visual C++

  1. // Client.cpp: implementation of the CClient class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "Stock.h"
  6. #include "Client.h"
  7. #include "ADOConn.h"
  8. #ifdef _DEBUG
  9. #undef THIS_FILE
  10. static char THIS_FILE[]=__FILE__;
  11. #define new DEBUG_NEW
  12. #endif
  13. //////////////////////////////////////////////////////////////////////
  14. // Construction/Destruction
  15. //////////////////////////////////////////////////////////////////////
  16. CClient::CClient()
  17. {
  18. Cid = 0;
  19. Cname = "";
  20. Ctype = 0;
  21. Contact = "";
  22. Address = "";
  23. Postcode = "";
  24. Phone = "";
  25. Fax = "";
  26. Memo = "";
  27. }
  28. CClient::~CClient()
  29. {
  30. }
  31. int CClient::GetCid()
  32. {
  33. return Cid;
  34. }
  35. void CClient::SetCid(int iCid)
  36. {
  37. Cid = iCid;
  38. }
  39. CString CClient::GetCname()
  40. {
  41. return Cname;
  42. }
  43. void CClient::SetCname(CString cCname)
  44. {
  45. Cname = cCname;
  46. }
  47. int CClient::GetCtype()
  48. {
  49. return Ctype;
  50. }
  51. void CClient::SetCtype(int iCtype)
  52. {
  53. Ctype = iCtype;
  54. }
  55. CString CClient::GetContact()
  56. {
  57. return Contact;
  58. }
  59. void CClient::SetContact(CString cContact)
  60. {
  61. Contact = cContact;
  62. }
  63. CString CClient::GetAddress()
  64. {
  65. return Address;
  66. }
  67. void CClient::SetAddress(CString cAddress)
  68. {
  69. Address = cAddress;
  70. }
  71. CString CClient::GetPostcode()
  72. {
  73. return Postcode;
  74. }
  75. void CClient::SetPostcode(CString cPostcode)
  76. {
  77. Postcode = cPostcode;
  78. }
  79. CString CClient::GetPhone()
  80. {
  81. return Phone;
  82. }
  83. void CClient::SetPhone(CString cPhone)
  84. {
  85. Phone = cPhone;
  86. }
  87. CString CClient::GetFax()
  88. {
  89. return Fax;
  90. }
  91. void CClient::SetFax(CString cFax)
  92. {
  93. Fax = cFax;
  94. }
  95. CString CClient::GetMemo()
  96. {
  97. return Memo;
  98. }
  99. void CClient::SetMemo(CString cMemo)
  100. {
  101. Memo = cMemo;
  102. }
  103. //数据库操作
  104. int CClient::HaveName(CString cCname)
  105. {
  106. //连接数据库
  107. ADOConn m_AdoConn;
  108. m_AdoConn.OnInitADOConn();
  109. //设置SELECT语句
  110. _bstr_t vSQL;
  111. vSQL = "SELECT * FROM Client WHERE Cname='" + cCname + "'";
  112. //执行SELETE语句
  113. _RecordsetPtr m_pRecordset;
  114. m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
  115. //返回各列的值
  116. if (m_pRecordset->adoEOF)
  117. return -1;
  118. else
  119. return 1;
  120. //断开与数据库的连接
  121. m_AdoConn.ExitConnect();
  122. }
  123. void CClient::sql_insert()
  124. {
  125. //连接数据库
  126. ADOConn m_AdoConn;
  127. m_AdoConn.OnInitADOConn();
  128. //设置INSERT语句
  129. CString strType;
  130. strType.Format("%d", Ctype);
  131. _bstr_t vSQL;
  132. vSQL = "INSERT INTO Client (Cname, Ctype, Contact, Address, Postcode, Phone, Fax, Memo) VALUES('"
  133. + Cname + "'," + strType + ",'" + Contact + "','" + Address + "','" + Postcode + "','"
  134. + Phone + "','" + Fax + "','" + Memo + "')";
  135. //执行INSERT语句
  136. m_AdoConn.ExecuteSQL(vSQL);
  137. //断开与数据库的连接
  138. m_AdoConn.ExitConnect();
  139. }
  140. void CClient::sql_update(CString cCid)
  141. {
  142. //连接数据库
  143. ADOConn m_AdoConn;
  144. m_AdoConn.OnInitADOConn();
  145. //设置INSERT语句
  146. CString strType;
  147. strType.Format("%d", Ctype);
  148. _bstr_t vSQL;
  149. vSQL = "UPDATE Client SET Cname='" + Cname + "', Ctype=" + strType + ", Contact='" 
  150. + Contact + "', Address='" + Address + "', Postcode='" + Postcode + "', Phone='" 
  151. + Phone + "', Fax='" + Fax + "', Memo='" + Memo + "' WHERE Cid=" + cCid;
  152. //执行INSERT语句
  153. m_AdoConn.ExecuteSQL(vSQL);
  154. //断开与数据库的连接
  155. m_AdoConn.ExitConnect();
  156. }
  157. void CClient::sql_delete(CString cCid)
  158. {
  159. //连接数据库
  160. ADOConn m_AdoConn;
  161. m_AdoConn.OnInitADOConn();
  162. //设置DELETE语句
  163. _bstr_t vSQL;
  164. vSQL = "DELETE FROM Client WHERE Cid=" + cCid;
  165. //执行DELETE语句
  166. m_AdoConn.ExecuteSQL(vSQL);
  167. //断开与数据库的连接
  168. m_AdoConn.ExitConnect();
  169. }
  170. //根据客户编号读取所有字段值
  171. void CClient::GetData(CString cCid)
  172. {
  173. //连接数据库
  174. ADOConn m_AdoConn;
  175. m_AdoConn.OnInitADOConn();
  176. //设置SELECT语句
  177. _bstr_t vSQL;
  178. vSQL = "SELECT * FROM Client WHERE Cid=" + cCid;
  179. //执行SELETE语句
  180. _RecordsetPtr m_pRecordset;
  181. m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
  182. //返回各列的值
  183. if (m_pRecordset->adoEOF)
  184. CClient();
  185. else
  186. {
  187. Cid = atoi(cCid);
  188. Cname = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Cname");
  189. Ctype = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Ctype"));
  190. Contact = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Contact");
  191. Address = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Address");
  192. Postcode = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Postcode");
  193. Phone = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Phone");
  194. Fax = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Fax");
  195. Memo = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Memo");
  196. }
  197. //断开与数据库的连接
  198. m_AdoConn.ExitConnect();
  199. }