2013-04-14 14 views
0

因此,我從http://dev.mysql.com/downloads/connector/cpp/
下載了C++/mysql連接器現在我想將從數據庫檢索到的數據存儲到變量中。這是我得到的。使用mysql連接器將數據從mysql數據庫存儲到C++變量中

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

我得到的錯誤 > Camera.exe中的0x75a54b32未處理的異常:Microsoft C++異常:內存位置0x0026e014處的sql :: InvalidArgumentException .. –

回答

0

儘管它不是那麼容易的猜測是沒有代碼和數據庫數據的其他情況發生,下面的代碼應該有助於在什麼地方至少得到更好的理解錯誤:

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

非常感謝!即使它在文檔中是正確的,我從未想過即使這樣做。如果我有更多的代表,我會爲你投票。 –