MFC中ADO数据库基本sql语句应用
2013-03-18 20:26
357 查看
首先先给出执行sql语句的函数ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL),由自己加入到工程中
bool CTrade_MISApp::ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL)
{
if ( ADOSet->State == adStateOpen) ADOSet->Close();
try
{
ADOSet->Open(strSQL, ADOConn.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdUnknown);
return true;
}
catch(_com_error &e)
{
CString err;
err.Format("ADO Error: %s",(char*)e.Description());
AfxMessageBox(err);
return false;
}
}
函数是加在APP类中的,也同时在类中添加了一个变量_RecordsetPtr
m_pADOSet,记录集指针变量
1.插入数据
_variant_t strQuery, Holder;
strQuery = "insert into suppliers (CompanyName, ContactName, Address, City) values
(' " + m_sCompany+" ' , ’ “+m_sPerson+" ' , ' "+m_sAddress+" ', ' "+ m_sCity+ " ')";
theApp.ADOEXecute(theApp.m_pADOSet, strQuery);
2.查询数据
_variant_t strQuery, Holder;
strQuery = "select * from suppliers where CompanyName = ' " +m_sCompany+ " ' ";
theApp.ADOEXecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();//获得查询结果数量
theApp.m_pADOSet->MOveFirst();
for(int i = 0 ; i < iCount; i++)
{
Holder = theApp.m_pADOSet->GetCollect("CompanyName");//得到具体字段的值
str = Holder.vt == VT_NULL ? "" : (char *)(_bstr_t)Holder;//将得到值转化为字符串,因为得到的是_variant_t类型
....................................
}
3.删除数据
_variant_t strQuery;
strQuery = "delete from suppliers where CompanyName='"+sCompany+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
这里只是基本简单的语句调用,有时程序需要用到更为复杂的查询语句时,其实就是把sql嵌在字符串里,注意引号的书写。
bool CTrade_MISApp::ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL)
{
if ( ADOSet->State == adStateOpen) ADOSet->Close();
try
{
ADOSet->Open(strSQL, ADOConn.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdUnknown);
return true;
}
catch(_com_error &e)
{
CString err;
err.Format("ADO Error: %s",(char*)e.Description());
AfxMessageBox(err);
return false;
}
}
函数是加在APP类中的,也同时在类中添加了一个变量_RecordsetPtr
m_pADOSet,记录集指针变量
1.插入数据
_variant_t strQuery, Holder;
strQuery = "insert into suppliers (CompanyName, ContactName, Address, City) values
(' " + m_sCompany+" ' , ’ “+m_sPerson+" ' , ' "+m_sAddress+" ', ' "+ m_sCity+ " ')";
theApp.ADOEXecute(theApp.m_pADOSet, strQuery);
2.查询数据
_variant_t strQuery, Holder;
strQuery = "select * from suppliers where CompanyName = ' " +m_sCompany+ " ' ";
theApp.ADOEXecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();//获得查询结果数量
theApp.m_pADOSet->MOveFirst();
for(int i = 0 ; i < iCount; i++)
{
Holder = theApp.m_pADOSet->GetCollect("CompanyName");//得到具体字段的值
str = Holder.vt == VT_NULL ? "" : (char *)(_bstr_t)Holder;//将得到值转化为字符串,因为得到的是_variant_t类型
....................................
}
3.删除数据
_variant_t strQuery;
strQuery = "delete from suppliers where CompanyName='"+sCompany+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
这里只是基本简单的语句调用,有时程序需要用到更为复杂的查询语句时,其实就是把sql嵌在字符串里,注意引号的书写。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201707/6bb3f2a2eb81f326445a31770403c7f1.gif)
相关文章推荐
- [转载]SQL基本语句用法(用ADO连接数据库用的)
- ADO+MFC数据库编程常用SQL语句
- VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
- VB6基本数据库应用(三):连接数据库与SQL语句的Select语句初步
- VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
- [置顶] VB6基本数据库应用(三):连接数据库与SQL语句的Select语句初步
- VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
- 通过sql语句获取数据库的基本信息
- ios开发-数据库网络之mysql创建数据库,表,基本SQL语句(5)
- 数据库概念和基本的SQL语句
- 利用SQL语句进行添加、删除、修改字段,表与字段的基本操作,数据库备份等
- 数据库基本----SQL语句大全
- 数据库基本----SQL语句大全
- 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
- 数据库入门-基本sql语句及数据类型
- 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
- C#.NET 大型企业信息化系统集成快速开发平台 4.1 版本 - 面向数据库SQL语句的应用开发二
- C#连接数据库最基本操作之sql语句 DML
- --数据库基本语句应用范例(上)
- 用SQL语句添加、删除、修改字段、一些表与字段的基本操作、数据库备份等