C 操作MYSQL資料庫

2021-08-18 20:52:18 字數 1758 閱讀 3336

1.安裝mysql

略2.建立c++控制台程式,新建cpp原始檔,如:sqlconn.cpp

3.在工程專案中屬性->c/c++->常規->附加包含目錄中新增mysql安裝目錄中的mysql\mysql\mysql server 5.7\include

4.新增庫目錄

5.新增依賴項」 libmysql.lib」

6.將執行平台改為x64(這步很重要,不然編譯時會報錯 )

7.在原始檔中加入標頭檔案:

#include //注意順序,要放在mysql.h前

#include //控制台專案中要在mysql.h之前include

8.編寫自己的資料庫操作程式

示例:void test1()

mysql_query(pconn,"set names gbk");//防止亂碼。設定和資料庫的編碼一致就不會亂碼

//set names x 相當於 set character_set_client = x;set character_set_results = x;set character_set_connection = x;

//寫set character set gbk;查詢不會亂碼,但是引數化插入會報錯。而set names gbk則都不會亂碼

//mysql_real_query比mysql_query多了個引數: 字串query的長度, 所以適合有二進位制資料的query, 而mysql_query的字串query不能包含二進位制,因為它以\0為結尾

//mysql_query() 不能傳二進位制blob欄位,因為二進位制資訊中的\0會被誤判為語句結束。 mysql_real_query() 則可以。

if(mysql_query(pconn,"select * from persons"))

//mysql_store_result是把查詢結果一次性取到客戶端的離線資料集,當結果比較大時耗記憶體。

//mysql_use_result則是查詢結果放在伺服器上,客戶端通過指標逐行讀取,節省客戶端記憶體。但是乙個mysql*連線同時只能有乙個未關閉的mysql_use_result查詢

mysql_res *result = mysql_store_result(pconn);

mysql_row row;

while(row = mysql_fetch_row(result))

mysql_free_result(result);

mysql_close(pconn);

}9.將mysq目錄….. \mysql\mysql server 5.7\lib 下的libmysql.dll放到生成的exe目錄下,編譯執行即可。

參考:1.

2.

c 操作mysql資料庫

include include stdio.h include winsock.h include mysql.h int main else else sprintf tmp,update s set 商品 s 賣出 d,成交 d,漲跌 d,買進 d,總量 d,漲幅 f,時間 s where s ...

c 操作MySql資料庫

需要mysql.data.dll 資料庫連線 server資料庫位址,user資料庫使用者名稱,password密碼,database資料庫名 string connectstring string.format server user id password database server,use...

C 操作mysql資料庫

採用c 封裝mysql提供的常用庫函式,實現對mysql資料庫的訪問。版本歷史 1 建立表的示例程式 createtable.cpp 本程式演示建立乙個表,用於存放商品資訊。include freemysql.h int main int argc,char argv 設定字符集為 gbk 與mys...