永发信息网

wex5怎么连接数据库

答案:2  悬赏:50  手机版
解决时间 2021-01-28 20:16
  • 提问者网友:缘字诀
  • 2021-01-28 01:57
wex5怎么连接数据库
最佳答案
  • 五星知识达人网友:你哪知我潦倒为你
  • 2021-01-28 03:17
首先是在数据库中将连接数调大一些,另外还有一个重要的问题是:程序与数据库的操作使用的是JDBC
全部回答
  • 1楼网友:鱼芗
  • 2021-01-28 04:09
//初始化数据库连接 ::coinitialize(null); 连接数据库 [cpp] view plaincopyprint? bool clogin::connectdb(void) { hresult hr = null; try { hr = m_pconnection.createinstance("adodb.connection");///创建 connection 对象 if(succeeded(hr)) { //登录数据库并连接数据库dbcourse //这里的server不能写成127.0.0.1否则会出现未指定的错误,应该写成sql server登录界面的服务器名称 m_pconnection->connectionstring = "driver={sql server};server=logo-pc\\logo;uid=dbcourse;pwd=dbcourse;"; m_pconnection->open("","","",adconnectunspecified); m_pconnection->defaultdatabase = "dbcourse"; } else { afxmessagebox(text("创建 connection 对象失败"));///显示错误信息 return false; } } catch(_com_error e)///捕捉异常 { cstring errormessage; errormessage.format( text("连接数据库失败 !\r\n 错误信息 :%s(%ld)"),e.errormessage(),e.error() ); afxmessagebox(errormessage);///显示错误信息 return false; } return true; } 操作数据库 [cpp] view plaincopyprint? void clogin::onbnclickedbutton1() { if( m_user.getwindowtextlength()<=0 || m_password.getwindowtextlength()<=0 ) { messagebox(text("请输入用户名或密码!"), text("错误:用户名或密码为空"), mb_ok | mb_iconwarning ); return; } if( false==this->connectdb() ) return; tchar szusername[20]; tchar szpassword[50]; tchar szsql[max_path]; //获取用户输入的用户名和密码 m_user.getwindowtext( szusername, 20 ); m_password.getwindowtext( szpassword, 50 ); //创建_recordsetptr用来执行数据库操作 _recordsetptr precordset; precordset.createinstance("adodb.recordset"); _tcscpy_s( szsql, text("select * from usr where uname='") ); _tcscat_s( szsql, szusername ); _tcscat_s( szsql, text("' and passwd='") ); _tcscat_s( szsql, szpassword ); _tcscat_s( szsql, text("';") ); precordset->open(_variant_t(szsql), _variant_t ((idispatch*) m_pconnection,true), adopenstatic, adlockoptimistic, adcmdtext); int nresult = dlg_result_ok; if( precordset->recordcount>0 ) { //messagebox(text("登录成功!"), szusername, mb_ok | mb_iconinformation ); } else { messagebox(text("用户名或密码错误!"), text("登录失败!"), mb_ok | mb_iconinformation ); nresult = dlg_result_error; } precordset->close(); if( dlg_result_ok==nresult ) exit( dlg_result_ok ); } 哦忘了一件事了,还需要在stafx.h文件中引入dll文件的,如此 [cpp] view plaincopyprint? //添加dll库 #import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("eof","adoeof") //添加dll库 //添加宏定义 #define dlg_result_ok 1 #define dlg_result_error 2 #define dlg_result_cancel 3 //添加宏定义
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯