MFC 连接 odbc SQLserver2000 实例~!

终于连接成功并可以操作数据库了 哎 对我我这个菜鸟来说是 很兴奋的一步~!

下面记录代码~!

 

#include<afxdb.h>  //连接数据库需要的头文件~!

#include"stdlib.h"

......

  ///添加数据库连接函数
 CDatabase  m_db;
 CRecordset m_Set;
 try
 {

                                //DSN="数据库名称" UID = “用户名” //PWD=“密码”
  m_db.OpenEx(_T("DSN=ZZNDB;UID=sa;PWD=111111"),CDatabase::noOdbcDialog);  
  m_Set.m_pDatabase = &m_db;
 }
 catch(CDBException* ex)
 {
  AfxMessageBox(ex->m_strError);
  AfxMessageBox(ex->m_strStateNativeOrigin);
 }
 catch(CMemoryException *pEx)
 {
    pEx->ReportError();
 AfxMessageBox(_T("memory exception"));

 }
 catch(CException *e)
 {
  TCHAR szError[100];
  e->GetErrorMessage(szError,100);
 }
CString sql = _T("SELECT passwords FROM longin where username ='zzn'");
 CString psd; //存放查询结果
 TRY  //以前没有用过的TRY CATCH~!
 {
  m_Set.Open(AFX_DB_USE_DEFAULT_TYPE,sql);
  m_Set.GetFieldValue(_T("passwords"),psd);
 }
 CATCH(CDBException,ex);
 {
  AfxMessageBox(ex->m_strError);
  AfxMessageBox(ex->m_strStateNativeOrigin);
 }
 AND_CATCH(CMemoryException,pEx)
 {
  pEx->ReportError();
  AfxMessageBox(_T("memory exception"));
 }
 END_CATCH
  
  int n =lstrlen(psd);
  char *Temp = new char[n];
  
  
  WideCharToMultiByte(CP_ACP,0,psd,-1,Temp,256,NULL,NULL); //由于产生宽字符所以需要用函数进行转换~!


  //   pTemp =*(char) psd.GetBuffer(psd.GetLength()); //无宽字符情况下可以用这个方法得到行对应的*char

  if(strcmp((const char*)Temp,(const char*)"111111")==0)
  {
  AfxMessageBox(_T("密码正确~!"));
  }

。。。。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值