Linux下C++连MySQL数据库
1.查看本地有沒有安裝mysql,命令就是mysql,如果有這個命令就表示安裝了mysql數據庫軟件。如果沒有就自行安裝。
sudo apt-get install mysql-server
sudo apt isntall mysql-client
sudo apt install libmysqlclient-dev
 2.查看本地有沒有安裝mysql的開發包。命令是 `mysql_config --cflags --libs` 如果有安裝就會有一串編譯選項和連接庫。如果沒有就自行安裝 mysql-devel-*****的rpm包 后面是版本號。mysql開發包提供了基本操作接口。安裝后頭文件在/usr/include/mysql 而動態庫在 /usr/lib/mysql 上。
?
3.創建一個用于練習的數據庫test.進入mysql> 然后依次輸入:
mysql>create database test;
mysql>use test;??? //切換到test數據庫中
mysql> create table test(name varchar(255),num int(10) ); //創建一個叫test的表
mysql>show create table test;? //顯示剛才創建的表信息
mysql> select * from test; //查詢test表中數據
mysql>quit
4.編寫一個c++程序,代碼如下:
?#include <stdio.h>
 ?#include <mysql.h>
 ?
 ?int main(int argc,char *argv[])
 ?{
 ???? MYSQL conn;
 ???? int res;
 ???? mysql_init(&conn);
 ???? if(mysql_real_connect(&conn,"localhost","root","","test",0,NULL,CLIENT_FOUND_ROWS)) //"root":數據庫管理員 "":root密碼 "test":數據庫的名字
 ???? {
 ???? printf("connect success!\n");
 ???? res=mysql_query(&conn,"insert into test values('user','123456')");
 ???? if(res)
 ???? {
 ??????? printf("error\n");
 ???? }
 ???? else
 ???? {
 ??????? printf("OK\n");
 ???? }
 ???? mysql_close(&conn);
 ???? }
 ???? return 0;
 ?}
5.編譯程序
r@r-Sys:~/Downloads$ g++ 1.cc -o 123 1.cc:2:11: fatal error: mysql.h: No such file or directory#include <mysql.h>^~~~~~~~~ compilation terminated.出現這個愿意是因為缺少開發庫,接下來安裝
sudo apt-get install libmysql++-dev編譯的時候要注意:
r@r-Sys:~/Downloads$ g++ 1.cc -I /usr/include/mysql -L/usr/lib/mysql -lmysqlclient -o 1234 r@r-Sys:~/Downloads$ ./1234 connect success! OK 編譯成功在Ubuntu體系中,已經安裝了mysql,即應用sudo apt-get install mysql-server mysql-client但是用C編譯mysql數據庫時,報錯 fatal error: mysql.h: No such file or directory 出現這個錯誤是因為體系沒有安裝mysql開發庫 執行下面指令安裝 sudo apt-get install libmysql++-dev 編譯時須要加連接-lmysqlclient.編譯源法度的時辰,如下號令:gcc -I/usr/include/mysql *.c -L/usr/lib/mysql -lmysqlclient -o *http://blog.csdn.net/skylinethj/article/details/38615769注意:編譯的時候,需要指定庫名include 和lib兩個庫,和庫名: 為此,執行: r@r-Sys:~/Downloads$ mysql_config Usage: /usr/bin/mysql_config [OPTIONS] Compiler: GNU 7.4.0 Options:--cflags [-I/usr/include/mysql ]--cxxflags [-I/usr/include/mysql ]--include [-I/usr/include/mysql]--libs [-L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lm -lrt -lssl -lcrypto -ldl]--libs_r [-L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lm -lrt -lssl -lcrypto -ldl]--plugindir [/usr/lib/mysql/plugin]--socket [/var/run/mysqld/mysqld.sock]--port [0]--version [8.0.20]--variable=VAR VAR is one of:pkgincludedir [/usr/include/mysql]pkglibdir [/usr/lib/x86_64-linux-gnu]plugindir [/usr/lib/mysql/plugin]
 原文:https://blog.csdn.net/ggm0928/article/details/83687111
注意編譯必須安裝 gcc g++
總結
以上是生活随笔為你收集整理的Linux下C++连MySQL数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 学习mysql的开端,从今天开始,学习m
- 下一篇: 看完c++ primer之后看什么
