Heim >Datenbank >MySQL-Tutorial >c++-C++连接mysql数据库时,用getString()方法总是出错

c++-C++连接mysql数据库时,用getString()方法总是出错

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-06 09:34:161276Durchsuche

mysqlc++数据库

http://www.cnblogs.com/joeblackzqq/p/4332945.html
我按照上面这个链接的教程,用了第二种Connector C++的方法,配置好boost的路径和mysql的路径后,就修改了一下范例的代码:

<code> #include <iostream>#include <map>#include <string>#include <memory>#include "mysql_driver.h"#include "mysql_connection.h"#include "cppconn/driver.h"#include "cppconn/statement.h"#include "cppconn/prepared_statement.h"#include "cppconn/metadata.h"#include "cppconn/exception.h"using namespace std;using namespace sql;int main(){    sql::mysql::MySQL_Driver *driver = 0;    sql::Connection *conn = 0;    try    {        driver = sql::mysql::get_mysql_driver_instance();        conn = driver->connect("tcp://localhost:3306/tree", "root", "123");        cout createStatement();    stat->execute("set names 'gbk'");    ResultSet *res;    res = stat->executeQuery("SELECT * FROM testuser");    while (res->next())    {        cout getInt("id") getString("name") getString("address") </memory></string></map></iostream></code>

为此我创建了一个数据库tree和表testuser:

<code>create database tree;use tree;create table testuser(id INT(4) PRIMARY KEY,name CHAR(25),address varchar(45));desc testuser;insert into testuser values(1,'Tom','China Beijing'),(2,'Amy','America NewYork');select*from testuser;</code>

准备工作都做好了,然后就开始执行:
问题来了:
这个是运行后的截图:

就弹出了这个错误

点击调试后,显示这个错误信息:

我注释掉getString()方法后,就可以运行,而且连接也是成功的:

而且两次同时都有这些错误信息:

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn