C++连接SQL的简单例子(win 和 linux)
window上的SQL server2008例子:
// ConSQL.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <tchar.h>
#include<iostream>
#include <string>
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")
using namespace std;
class ADOConn
{
public:_ConnectionPtr m_pConnection;_RecordsetPtr m_pRecordset;
public:ADOConn();virtual ~ADOConn(){};void OnInitADOConn();//初始化连接void ExecuteSQL(_bstr_t bstrSQL);
};
ADOConn::ADOConn()
{CoInitialize(NULL); //初始化必不可少HRESULT hr=m_pConnection.CreateInstance(_uuidof(Connection));if(FAILED(hr))cout<<"_ConnectionPtr对象指针实例化失败!!!"<<endl;
}void ADOConn::OnInitADOConn()
{try{ //在COM接口中,参数若为字符串, 一定要用BSTR _bstr_t con_bstr="Driver={sql server};server=127.0.0.1,1433;uid=mysa;pwd=11;database=CTXSYS;";m_pConnection->Open(con_bstr,"","",adModeUnknown);// adModeUnknown 缺省,当前的许可权未设置}catch(_com_error &e) {cout<<e.Description()<<endl;}
}
void ADOConn::ExecuteSQL(_bstr_t bstrSQL)
{m_pRecordset=m_pConnection->Execute(bstrSQL, NULL, adCmdText);
}int main(int argc, _TCHAR* argv[])
{_bstr_t strSql="select * from TB_SHANGPIN";//选择表的SQL语句 ADOConn con;con.OnInitADOConn();con.ExecuteSQL(strSql);string res;while(!con.m_pRecordset->adoEOF){ res = (_bstr_t)con.m_pRecordset->GetFields()->GetItem ("SPBH")->Value; res +="\t";res += (_bstr_t)con.m_pRecordset->GetFields()->GetItem ("SPMC")->Value; res +="\t";res += (_bstr_t)con.m_pRecordset->GetFields()->GetItem ("SPJM")->Value; res +="\t";res += (_bstr_t)con.m_pRecordset->GetFields()->GetItem ("SPLB")->Value; cout<<res<<endl;; con.m_pRecordset->MoveNext(); } return 0;
}
linux上的Mysql8.0例子:
/*
* 输出指定表 tbname 的全部数据
* 编译选项: g++ -std=c++11 xdevapi.cpp -lmysqlcppconn8
× mysql 版本: 8.0.11
*/#include <mysqlx/xdevapi.h>
#include <iostream>
using namespace mysqlx;int main()
{Session mySession("localhost", 33060, "usrname", "pwd"); //数据库用户名:usrname,密码pwd// Switch to use schema 'test'mySession.sql("USE dbname").execute();//数据库名:dbname// Use an SQL query to get the resultauto myResult = mySession.sql("SELECT *from tbname").execute(); // 表名:tbname// Gets the row and prints the first columnstd::list<Row> allrow = myResult.fetchAll();for (std::list<Row>::iterator it=allrow.begin(); it != allrow.end(); ++it){for(int i=0;i<(*it).colCount();i++)std::cout << (*it)[i]<<"\t";std::cout<<std::endl;}
}
MySQL Connector/C++开发文档: https://dev.mysql.com/doc/dev/connector-cpp/8.0/usage.html
guide手册: https://dev.mysql.com/doc/x-devapi-userguide/en/using-sql.html
c++连接Mysql需要的库下载地址: https://dev.mysql.com/downloads/connector/cpp/
以下是下载安装过程:
解压后的文件
解压后把 include 文件夹中的内容复制到 /usr/include
把lib64 文件夹中的内容复制到 /usr/lib
否则就要在编译时加上路径。
C++连接SQL的简单例子(win 和 linux)相关推荐
- Spark SQL 最简单例子
2019独角兽企业重金招聘Python工程师标准>>> Spark SQL 最简单例子 博客分类: spark <dependency><groupId>or ...
- python 连接sql server
linux 下pymssql模块的安装 所需压缩包: pymssql-2.1.0.tar.bz2 freetds-patched.tar.gz 安装: tar -xvf pymssql-2.1.0.t ...
- QT 连接 sql server数据库 完整演示
1.测试qt是否支持sql sqlserver 在配置文件中先添加 一行 QT+=sql #include <QApplication> #include <QSqlDatabase ...
- 【ASP.NET】VS2015连接SQL Server数据库,实现登录、注册
文章目录 1. 实验目标 2. 难点 3. 问题 3.1 SQL Server 3.2 Demo练习 3.3 编写页面时的错误 4. 总结 5. 页面 6. 主要代码 [ASP.NET]VS2015连 ...
- SQL左连接,右连接,内连接简单例子
SQL左连接,右连接,内连接简单例子 左连接:以左表为主 select column_a , column_b from table_a left join table_b on table_a.id ...
- Java 实现连接sql server 2000(JDBC数据库访问例子)
JAVA语言的跨平台的工作能力(Write Once ,Run Anywhere).优秀的图像处理能力(我相信现在没有那种语言可以超过JAVA在网络上的图形处理能力).网络通信功能.通过JDBC数据库 ...
- Netty实现长连接简单例子
Netty实现长连接的简单例子 服务端 NettyServerBootstrap提供长连接服务 public class NettyServerBootstrap {private static fi ...
- sas连接mysql的server_超简单实现SAS软件 连接 SQL Server
实现SAS与SQL Server数据库的连接,好处多多,真是太棒了,小编折腾了好久才玩出这种简便的方法.SAS与SQL Server连接的优点: 1.可以直接在SAS中访问SQL Server数据库中 ...
- Sql Create Function简单例子
1.Create Function简单例子 --创建函数(返回varchar类型的值) create function test(@Num varchar(20))--@Num 参数 returns ...
最新文章
- OpenResty中使用反向代理
- Spark源码分析之Worker启动通信机制
- 移动硬盘无法休眠了?
- 为何需要实施数据治理
- 《凤凰项目-一个IT运维从传奇故事》读后感+个人职业思考
- 读书笔记 《TAOCP》 V1 S1.2
- java判断子串重复_判断字符串是否是由子串重复多次构成
- mysql 小数点多余0_mysql中如何去除小数点后面多余的0
- 解决Edge及Chrome等浏览器主页被篡改2345导航页
- 6.2排序式检索 词项频率
- 工业和信息化部关于印发贯彻落实《国务院关于积极推进“互联网+”行动的指导意见》行动计划(2015-2018年)的通知
- WEB打印控件Lodop(V6.x)使用说明及样例
- 对大一c语言学习的感想
- 【POJ 3322】 Bloxorz I
- php发送gmail,汇总PHPmailer群发Gmail的常见问题
- 微信小程序Node.js+uniapp学习计划与日程管理系统app
- 神经网络常用术语(Updating)
- html火狐浏览器秒杀插件,火狐浏览器Firefox(已装载常用渗透插件) 2018-06
- 软件设计师-数据结构知识
- 在线博客系统——获取用户信息,退出登录
热门文章
- 【阅读笔记】Gradient Harmonized Single-stage Detector
- Sniper模拟器的安装
- so-vits-svc4.0 中文详细安装、训练、推理使用教程
- 常用SQL语句大全,数据分析师入门必备!
- JS往数组中添加字段
- 从零开始创建GD32F4系列单片机工程模板移植涂鸦MCU-SDK
- TinyXML 指南一
- 16代表啥_形势严峻下的医药代表如何不被淘汰
- android 控制中心os,Phone X Launcher, OS 11 iLauncher Control Center
- 解析器生成器 ANTLR的详细介绍