最近參與了《vr祖碼》的開發,開發團隊用的是ue4引擎,c++作為開發語言,需要在伺服器儲存資料
然後就一直在研究c++鏈結mysql,雖然簡單,但是裡面的坑還是很多的,網上的例子也很多但是大多
都是好幾年前的,還有的就ide不同,要麼就是鏈結的本地的資料庫,導致**無盡報錯,
本文出自2023年1月8號,
ide:visualstudio2017,
mysql版本:5.6,
伺服器:contos,
開發環境:windows
首先說明connectors是聯結器,用來和mysql做鏈結的
然後我們還需要配置專案
在vs裡右鍵專案->屬性
配置屬性 -> c/c++ -> 常規 -> 附加包含目錄 -> include資料夾
配置屬性 -> c/c++ -> 所有選項 -> 附加包含目錄 -> include資料夾
配置屬性 -> 聯結器 -> 常規 -> 附加庫目錄 -> lib資料夾
配置屬性 -> 聯結器 -> 輸入 -> 輸入新增libmysql.lib檔案
.cpp**案例
#include
#include "stdafx.h"
#include
#include
#include
using
namespace
std;
#pragma comment(lib,"libmysql.lib")
int main()
if(!mysql_query(&mycont, "insert into level_1(name,count) values('dongguozheng',2)"))
else }}
else
}else
if (result != null)
mysql_free_result(result);
mysql_close(&mycont);
system("pause");
return
0;}
然後這段**片可能大家看不懂,其實對於初學者只要記住這幾個就ok了
mysql conn;
初始化鏈結操作
mysql_init(&conn);
鏈結mysql
mysql_real_connect(&conn,'127.0.0.1','root','qqqqqq','frog_db',3306,null,0);
char * sql = "select * from level_1";
mysql_query(&conn,sql); //執行sql語句
mysql_res * result = mysql_store_result(&conn); //乙個完整的結果集
mysql_fetch_row(result); //從結果集合中魚的下一行
mysql_num_rows(result); //返回結果集合中行的數量
mysql_error(&conn); //返回最近被呼叫的mysql函式的出錯訊息。
msyql_errorno(&conn);
其中增刪改都用mysql_query()函式即可,後面引數帶入sql語句即可
只有查不一樣,mysql_store_result()返回的是乙個資料集合
執行程式:
如果執行報錯如下圖所示的錯誤
說明編譯的exe執行檔案沒有libmysql.dll可以去執行
只需要把lib放到同目錄即可
最後由於作者也是初學者,還有諸多地方需要指點,如有疏忽還望各位讀者不吝賜教,
mysql增刪改查效果 mysql增刪改查
檢視所有資料庫 mysql show databases 建立乙個庫ghd並指定字符集為utp8 mysql create database ghd charset utf8 檢視mysql支援的字符集 mysql show char set 建立乙個表,並設定id為主鍵 create table ...
mysql增刪改查擴充套件 MySQL增刪改查
1 插入 insert 1 insert into 表名 values 值1 值2 例子 insert into t1 values zengsf 23 fengshao 22 2 insert into 表名 欄位1,values 值1 例子 insert into t1 name values ...
nodeJs鏈結Mysql,做增刪改查
nodejs連線mysql,首先安裝了mysql之後,在cmd介面安裝nodejs的mysql模組 mysql中建立資料庫 nodetry1 再建立表table2 指定id為主鍵 選擇資料庫和表 var test database nodetry1 var test table table2 var...