如何在VS2013下對MySQL5.6進行連接,本文為大家提供了解決方案,供大家參考,具體內容如下
環境:win832系統,VS2013,MySQL5.6,boost1.60
需要注意的是,安裝MySQL時需要安裝完整版本,否則在MySql的目錄下可能會沒有Connector.C++ 1.1這個目錄。
boost下載後,直接解壓即可。(我是放在C:\Program Files目錄下),下載地址:http://www.boost.org/users/download/
連接的方式有2種:
一種是純C風格的,不需要使用Connector.C++ 1.1目錄下提供的內容。(個人覺得麻煩,代碼看著亂,網上有很多資源)。
一種就是利用Connector.C++ 1.1提供的內容,代碼簡潔,這裡只講這種方法連接數據庫。
首先,新建一個VC++的win32空項目。添加源文件,代碼如下(代碼暫時無法運行,具體配置在後面)
源.cpp
#include<cppconn\driver.h> #include<cppconn\exception.h> #include <cppconn/resultset.h> #include <cppconn/statement.h> #include<mysql_connection.h> #include<iostream> #include<string> using namespace std; int main() { sql::Driver *dirver; sql::Connection *con; sql::Statement *stmt; sql::PreparedStatement *pstmt; sql::ResultSet *res; dirver = get_driver_instance(); //連接數據庫 con = dirver->connect("localhost", "root", "123456"); //選擇mydata數據庫 con->setSchema("mydata"); con->setClientOption("characterSetResults", "utf8"); stmt = con->createStatement(); //從name_table表中獲取所有信息 res = stmt->executeQuery("SELECT * from name_table"); //循環遍歷 while (res->next()) { //輸出,id,name,age,work,others字段的信息 cout << res->getInt("ID") << " | " << res->getString("name") << " | " << res->getInt("age") << " | " << res->getString("work") << " | " << res->getString("others") << endl; } //清理 delete res; delete stmt; delete con; return 0; }
對於以Debug版本運行的程序:
1、項目(P)——xxx屬性頁——配置屬性——C/C++——附加包含目錄添加:
C:\Program Files\MySQL\Connector.C++ 1.1\include
C:\Program Files\boost_1_60_0
2、項目(P)——xxx屬性頁——配置屬性——鏈接器——常規——附加庫目錄添加
C:\Program Files\MySQL\Connector.C++ 1.1\lib\debug
3、項目(P)——xxx屬性頁——配置屬性——鏈接器——輸入——附加依賴項添加
mysqlcppconn.lib
4、將C:\Program Files\MySQL\MySQL Server 5.6\lib目錄下的libmysql.dll和C:\Program Files\MySQL\Connector.C++ 1.1\lib\debug目錄下的mysqlcppconn.dll,拷貝到工程目錄中(和源文件放在一個目錄即可)。
對於以Release版本運行的程序:
1、項目(P)——xxx屬性頁——配置屬性——C/C++——附加包含目錄添加:
C:\Program Files\MySQL\Connector.C++ 1.1\include
C:\Program Files\boost_1_60_0
2、項目(P)——xxx屬性頁——配置屬性——鏈接器——常規——附加庫目錄添加
C:\Program Files\MySQL\Connector.C++ 1.1\lib\opt
3、項目(P)——xxx屬性頁——配置屬性——鏈接器——輸入——附加依賴項添加
mysqlcppconn.lib
4、將C:\Program Files\MySQL\MySQL Server 5.6\lib目錄下的libmysql.dll和C:\Program Files\MySQL\Connector.C++ 1.1\lib\opt目錄下的mysqlcppconn.dll,拷貝到工程目錄中(和源文件放在一個目錄即可)。
為什麼區別配置Debug和Release版本?
可以試一下,以本文的程序為例,以Debug的配置,在Release版本下運行不了程序。反之亦然。
運行結果:
數據庫中的數據
程序運行結果
以上就是本文的全部內容,希望對大家的學習有所幫助。