1、)using namespace std;/初始化连接数据库void CADO:Connect(void) try coutOpen(strConnect,adModeUnknown); cout连接数据库成功! if(hr!=S_OK) cout不能连接到指定的数据库! catch(_com_error e)e.Description()Close(); m_pConnection-CoUninitialize(); /释放环境/ 执行查询_RecordsetPtr& CADO:GetRecordset(_bstr_t SQL) m_pRecordset=NULL; CADO link; i
2、f(m_pConnection=NULL) Connect();/ 连接数据库,如果Connection对象为空,则重新连接数据库 m_pRecordset.CreateInstance(_uuidof(Recordset);/ 创建记录集对象Open(_bstr_t)SQL, m_pConnection.GetInterfacePtr(), adOpenDynamic, adLockOptimistic, adCmdText); / 取得表中的记录 return m_pRecordset;/ 返回记录集/ 执行SQL语句,Insert Update _variant_tbool CADO:E
3、xecuteSQL(_bstr_t bstrSQL)/ _variant_t RecordsAffected; / 是否已经连接数据库 if(m_pConnection = NULL) / Connection对象的Execute方法:(_bstr_t CommandText, / VARIANT * RecordsAffected, long Options ) / 其中CommandText是命令字串,通常是SQL命令。 / 参数RecordsAffected是操作完成后所影响的行数, / 参数Options表示CommandText的类型:adCmdText-文本命令;adCmdTabl
4、e-表名 / adCmdProc-存储过程;adCmdUnknown-未知Execute(bstrSQL,NULL,adCmdText); return true; return false;ADO.h#ifndef _ADO_H_#define _ADO_H_/用来连接数据库class CADOprivate: _ConnectionPtr m_pConnection; /添加一个指向Connection对象的指针: _RecordsetPtr m_pRecordset;/添加一个指向Recordset对象的指针:public: void Connect(void); void ExitCo
5、nnect(void); _RecordsetPtr& GetRecordset(_bstr_t SQL); bool ExecuteSQL(_bstr_t bstrSQL);#endifTest.cppchar loginname50,loginpassword50;int login()- 登录界面 char inputname50,inmputpassword50; int flag=0; 请输入用户名: cininputname;请输入密码:inmputpassword; string sql;/用来放sql语句 CADO record;/声明一个类的对象 record.Connect
6、();/连接数据库/用来放得到的数据集 sql=select * from users _bstr_t bstr(sql.c_str(); m_pRecordset=record.GetRecordset(bstr); while(!m_pRecordset-adoEOF) strcpy_s(loginname,(_bstr_t)m_pRecordset-GetFields()-GetItem(username)-Value); strcpy_s(inmputpassword,(_bstr_t)m_pRecordset-password if(strcmp(loginname,inputname)=0&strcmp(inmputpassword,inmputpassword)=0) flag=1;/找到该用户,身份验证正确 break; m_pRecordset-MoveNext(); record.ExitConnect();/释放连接 if(flag=0) return 0; else return 1;int main() if(login()=0)登录失败!登录成功!
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1