c++ SQL Server ADO串连
来源:互联网 发布:济宁seo公司 编辑:程序博客网 时间:2024/04/29 16:51
第一次玩CSDN,一个大学本科生,到了快毕业的年纪,真不知道是应该样样涉猎还是一心钻研。怎么说,走一步是一步吧。
今天找了做了C++ 和 SQLServer 连接的方式,在网上寻找很多方法并不适用,今天自己改着改着弄出来了,留作纪念!
#include <icrsint.h>#include<iostream>#include<iomanip>#include <string>using namespace std;#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF", "adoEOF") //ADOvoid main(){CoInitialize(NULL);_ConnectionPtr sqlSp;HRESULT hr=sqlSp.CreateInstance(_uuidof(Connection));if(FAILED(hr)){cout<<"_ConnectionPtr¶ÔÏóÖ¸ÕëʵÀý»¯Ê§°Ü!!!"<<endl;return ;}else {try {_bstr_t strConnect="Driver={sql server};server=127.0.0.1,1433;uid=***;pwd=****;database=*****;"; sqlSp->Open(strConnect,"","",adModeUnknown);}catch(_com_error &e) {cout<<"´ò¿ªÊý¾Ý¿âʧ°Ü!!"<<endl;}//ÊäÈë½×¶Îcout<<"1£º²éѯ"<<endl;cout<<"2£º²åÈë"<<endl;cout<<"3£ºÉ¾³ý"<<endl;int flag;cin>>flag;if(flag==1) //²éѯÊý¾Ý¿â½á¹û{_RecordsetPtr m_pRecordset; //ÉùÃ÷¼Ç¼¼¯¶ÔÏóÖ¸Õ룬ÓÃÀ´Ö´ÐÐSQLÓï¾äif(FAILED(m_pRecordset.CreateInstance( _uuidof( Recordset )))){cout<<"³õʼ»¯¼Ç¼¼¯¶ÔÏóÖ¸Õëʧ°Ü!"<<endl;return;}try{//m_pRecordset->Open("select * from dbo.student",(IDispatch*)sqlSp,adOpenDynamic,adLockOptimistic, adCmdText);//Ö´Ðе¥±íSQLÓï¾äm_pRecordset->Open("select dbo.student.ID,dbo.student.name,dbo.stugrade.grade from dbo.student join dbo.stugrade on dbo.student.ID=dbo.stugrade.ID",(IDispatch*)sqlSp,adOpenDynamic,adLockOptimistic, adCmdText); //Ö´Ðжà±íÁ¬½Ó}catch (_com_error &e){cout<<"SQLÓï¾äÖ´ÐÐʧ°Ü!!"<<endl;}try {m_pRecordset->MoveFirst();cout<<"²éѯ½á¹ûÈçÏÂËùʾ:"<<endl;while(!m_pRecordset->adoEOF) {string stu_num=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("ID"))->Value);string stu_name=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("name"))->Value);string stu_grade=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("grade"))->Value);cout<<stu_num<<" "<<stu_name<<" "<<stu_grade<<endl;m_pRecordset->MoveNext();}}catch (_com_error &e){cout<<"½á¹û³ö´í!!"<<endl;}}else if(flag==2){_RecordsetPtr m_pRecordset; //ÉùÃ÷¼Ç¼¼¯¶ÔÏóÖ¸Õ룬ÓÃÀ´Ö´ÐÐSQLÓï¾äif(FAILED(m_pRecordset.CreateInstance( _uuidof( Recordset )))){cout<<"³õʼ»¯¼Ç¼¼¯¶ÔÏóÖ¸Õëʧ°Ü!"<<endl;return;}_bstr_t insert_sql="insert into dbo.student values(4,'wang')";try{sqlSp->Execute(insert_sql,NULL,adCmdText);m_pRecordset->Open("select * from dbo.student",(IDispatch*)sqlSp,adOpenDynamic,adLockOptimistic, adCmdText);//Ö´ÐвåÈëºó½øÐÐSQLÓï¾ä²éѯ}catch (_com_error &e){cout<<"SQLÓï¾äÖ´ÐÐʧ°Ü!!"<<endl;}try {m_pRecordset->MoveFirst();cout<<"²éѯ½á¹ûÈçÏÂËùʾ:"<<endl;while(!m_pRecordset->adoEOF) {string stu_num=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("ID"))->Value);string stu_name=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("name"))->Value);cout<<stu_num<<" "<<stu_name<<endl;m_pRecordset->MoveNext();}}catch (_com_error &e){cout<<"½á¹û³ö´í!!"<<endl;}}else if(flag==3) //ɾ³ý{_RecordsetPtr m_pRecordset; //ÉùÃ÷¼Ç¼¼¯¶ÔÏóÖ¸Õ룬ÓÃÀ´Ö´ÐÐSQLÓï¾äif(FAILED(m_pRecordset.CreateInstance( _uuidof( Recordset )))){cout<<"³õʼ»¯¼Ç¼¼¯¶ÔÏóÖ¸Õëʧ°Ü!"<<endl;return;}_bstr_t delete_sql="delete from dbo.student where ID=4";try{sqlSp->Execute(delete_sql,NULL,adCmdText);m_pRecordset->Open("select * from dbo.student",(IDispatch*)sqlSp,adOpenDynamic,adLockOptimistic, adCmdText);//Ö´ÐвåÈëºó½øÐÐSQLÓï¾ä²éѯ}catch (_com_error &e){cout<<"SQLÓï¾äÖ´ÐÐʧ°Ü!!"<<endl;}try {m_pRecordset->MoveFirst();cout<<"²éѯ½á¹ûÈçÏÂËùʾ:"<<endl;while(!m_pRecordset->adoEOF) {string stu_num=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("ID"))->Value);string stu_name=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("name"))->Value);cout<<stu_num<<" "<<stu_name<<endl;m_pRecordset->MoveNext();}}catch (_com_error &e){cout<<"½á¹û³ö´í!!"<<endl;}}}system("pause");}
0 0
- c++ SQL Server ADO串连
- ADO访问SQL SERVER
- ADO连接SQL SERVER
- ADO 连接sql server
- ADO VC++ SQL server
- ado连接sql server
- 使用ADO连接ACCESS和SQL SERVER数据库[C++]
- C语言串连接代码
- ado+sql server的发布
- SQL Server 和 ADO.NET
- ado连接sql server 数据库
- ADO对象连接SQL SERVER
- 用ADO管理SQL SERVER !
- ado 连接SQL server问题
- 用ADO管理SQL SERVER
- ADO连接SQL Server数据库
- SQL Server入门------ADO 简介
- ADO.NET与SQL Server
- leetcode Remove Element
- 黑马程序员_Foundation框架小结
- ajax异步登录验证实现
- [Servlet]深入研究GenericServlet
- 10个最新的 Bootstrap 3 管理模板
- c++ SQL Server ADO串连
- 重新教自己学算法之图的最短路(十二)
- HIVE和HBASE区别
- java程序打包jar文件自带图片
- leetcode_BinaryTreeLevelOrderTraversal
- C++对C语言register的增强
- poj2484
- 如何提取剑叁模型
- php安装pear