2013-04-14 2 views
0

Итак, я загрузил соединитель C++/mysql из http://dev.mysql.com/downloads/connector/cpp/
Теперь я хочу сохранить данные, которые я получил из базы данных, в переменную. Это все, что я получил.Хранить данные из базы данных mysql в переменную C++ с использованием соединителя mysql

string str; 
/////////////////////////////////get data from database//////////////////////////////////////////////////////// 
    sql::Driver *driver; 
    sql::Connection *con; 
    sql::Statement *stmt; 
    sql::ResultSet *res; 

    /* Create a connection */ 
    driver = get_driver_instance(); 
    con = driver->connect("tcp://127.0.0.1:3306", "root", ""); 
    /* Connect to the MySQL test database */ 
    con->setSchema("awesome"); 

    stmt= con->createStatement(); 

     res = stmt->executeQuery(

"SELECT * FROM master where choice='Y'"); 

/////////////////////////////Store it somewhere/////////////////////////////// 
      str= res->getString("rfid"); 

Любой помощь приветствуется

+0

Вы сохранили данные в переменной str. Тогда в чем вопрос? Также было бы полезно опубликовать полный пример источника. – alexrider

+0

Ошибка Я получаю > Необработанное исключение в 0x75a54b32 в camera.exe: исключение Microsoft C++: sql :: InvalidArgumentException в ячейке памяти 0x0026e014 .. –

ответ

0

Хотя это не так легко догадаться, что происходит без остальной части данных коды и баз данных, следующий код должен помочь, по крайней мере получить лучшее понимание о том, что пошел Неправильно:

try 
    { 
    while (res->next()) 
    { 
      str= res->getString("rfid"); 
    } 
    } 
    catch (std::exception &e) 
    { 
    std::cerr << e.what(); 
    } 
+0

Большое вам спасибо! Я никогда не думал даже делать это, даже если это правильно в документации. Если бы у меня было больше репутации, я бы проголосовал за вас. –

Смежные вопросы