注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

勇敢的劳尤条

 
 
 

日志

 
 

mysql++ 使用中遇到的问题解答  

2013-10-15 10:36:24|  分类: mysql相关 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
1. 多重查询设置问题
首先放上一份测试代码。代码内容是测试连接数据库test,以及在数据库test中建表、删表、插入记录、查询更新等操作。

#include <mysql++.h>
#include <iostream>
#include <string>
using namespace std;
using namespace mysqlpp;
int main(int argc, char*argv[])
{
const char* db = "test", *server = "localhost", *user = "root", *pass = "ipcamera";
mysqlpp::Connection conn(false);
// conn.set_option(new MultiStatementsOption(true));//设置多重查询
conn.set_option(new mysqlpp::SetCharsetNameOption("gbk"));//中文国标,避免乱码
if (conn.connect(db, server, user, pass))
{
Query query = conn.query();
query<<"DROP TABLE IF EXISTS nametest;"<<
"create table nametest \
(userName varchar(15) not null, \
userPsw varchar(15) not null);";
string str("fuck");
query<<"insert into nametest value("<<quote_only<<str<<","<<quote_only<<str<<");";
if(query.exec())//执行query
{
cout<<"success"<<endl;
}
else
{
cerr<<"fail:"<<query.error()<<endl;
}
}
else
{
cerr << "DB connection failed: " << conn.error() << endl;
return 1;
}
return 0;
}

编译,提供一个简单的makefile吧。在另一篇博文里,讲述了安装mysql以及helloworld编写,下面是链接。

http://yuanshuilee.blog.163.com/blog/static/217697275201391482712233/

习惯使用IDE的,可以参考下面这篇博客,CodeBlocks编译运行mysql++工程。

http://yuanshuilee.blog.163.com/blog/static/217697275201391511341487/


运行中,我碰到了一个问题

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use

这个问题说的是语法问题。我将query的内容用mysql命令行可以运行的,但是这里为何不能呢?

因为mysql++有许多连接选项,其中一个是设置多重查询,一个query可以查询好几句。上面红色部分。

将红色部分注释符号删掉,那么上述错误不再出现。



2. 并发查询问题
待续
  评论这张
 
阅读(118)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017