您好,登錄后才能下訂單哦!
用c++/c連接 MySQL 數據庫有兩種方法:
第一種:利用ADO連接
第二種:利用 MySQL 自己的 API 函數進行連接
第一種ADO可以連接多種數據庫,例如:mysql、sqlserver、oracle、access等。
第二種API方式只針對mysql數據庫的連接,不用安裝MyODBC服務器程序。
這兒我用的API方式進行連接mysql數據庫,相對于ADO方式效率更高。(后面可以研究第一種方式)
虛擬機的版本:redhat7.0 64bit
數據庫的版本:MySQL5.7(已安裝好)
1、將解壓得到的文件里對應的庫,頭文件拷貝到系統能找到的位置
例如:我當時安裝數據庫的文件都在:/usr/local/下
執行:cp /usr/local/include/* /usr/include/
注意,拷貝時,如果*里含有文件夾,則需要用:
cp -r /usr/local/include/* /usr/include/
(cp將遞歸復制該目錄下所有的子目錄和文件)
隨意寫一段測試文件:1.cpp
# include <iostream>
# include <mysql/mysql.h>
using namespace std;
int main()
{
MYSQL * connection;
connection = mysql_init(NULL);
return 0;
}
然后用 g++ -o 1 1.cpp -lmysqlcient 編譯文件
很不幸,又是意料之中的出現了一個問題:
找不到庫文件導致的。
終端輸入命令:mysql_config --libs
現在我們編譯時加上路徑,執行:g++ -L/usr/local/lib/mysql -lmysqlclient -o 1 1.cpp
編譯通過。
鏈接時默認路徑為 /usr/local/lib,多了一層目錄,我們將mysql下的文件拷貝到lib下
執行:cp /usr/local/lib/mysql/* /usr/local/lib/
此時刪不刪lib下的mysql文件夾都無礙了。
再次執行 g++ -o 1 1.cpp -lmysqlclient 編譯通過。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。