㈠ C語言使用MySQL實現資料庫查詢c與mysql連接查詢
C語言使用MySQL實現資料庫查詢
MySQL是一種流行的開源關系型資料庫管理系統,被廣泛應用於各種應用程序的開發。C語言是一種強類型的編程語言,廣泛應用於嵌入式程序和系統級程序的開發中。在本文中,我們將討論如何使用C語言連接MySQL資料庫,進行數據查詢等操作。
一、安裝MySQL並創建資料庫
首先需要在系統中安裝MySQL,並創建一個資料庫。可以通過以下命令在Ubuntu中安裝MySQL:
sudo apt-get install mysql-server
或者可以從MySQL官網下載適合自己系統的安裝包,進行安裝。安裝完畢後,需要創建一個新的資料庫:
mysql -uroot -p
create database test_db;
use test_db;
create table users(name varchar(20), age int);
以上命令創建了一個名為test_db的資料庫,並在其中創建了一個名為users的表格,用來存儲用戶名和年齡。
二、使用C語言連接MySQL資料庫
在C語言中使用MySQL前,需要先安裝MySQL的開發包
sudo apt-get install libmysqlclient-dev
在程序中引入頭文件mysql.h,並使用mysql_init()函數來初始化MySQL連接:
MYSQL *conn;
conn = mysql_init(NULL);
接下來設置資料庫連接信息以及用戶身份驗證信息:
mysql_real_connect(conn, “localhost”, “root”, “mysql_password”, “test_db”, 0, NULL, 0);
以上代碼將連接到名為test_db的資料庫中,並使用用戶名root和密碼mysql_password進行身份驗證。
三、執行資料庫查詢
完成以上連接工作後,我們可以開始執行查詢操作。為方便起見,我們編寫一個簡單的函數:
void search(MYSQL *conn){
MYSQL_RES *res;
MYSQL_ROW row;
mysql_query(conn, “SELECT * FROM users”);
res = mysql_use_result(conn);
while((row = mysql_fetch_row(res)) != NULL){
printf(“%s\t %s\n”, row[0], row[1]);
}
mysql_free_result(res);
}
以上代碼將查詢表格users中的所有數據,並列印出每一行的內容。mysql_query()函數用於向資料庫發送SQL語句,mysql_use_result()函數獲取查詢結果集,並通過mysql_fetch_row()函數逐行讀取查詢結果。
四、完整程序代碼
下面是一個完整可運行的C語言程序,將通過MySQL查詢users表格中的數據並輸出:
#include
#include
#include
void search(MYSQL *conn){
MYSQL_RES *res;
MYSQL_ROW row;
mysql_query(conn, “SELECT * FROM users”);
res = mysql_use_result(conn);
while((row = mysql_fetch_row(res)) != NULL){
printf(“%s\t %s\n”, row[0], row[1]);
}
mysql_free_result(res);
}
int mn(){
MYSQL *conn;
conn = mysql_init(NULL);
mysql_real_connect(conn, “localhost”, “root”, “mysql_password”, “test_db”, 0, NULL, 0);
search(conn);
mysql_close(conn);
return 0;
}
以上程序將輸出如下結果:
name age
(null) (null)
這是因為我們還沒有插入任何數據。如果數據被插入,則相應的欄位將被列印出來。
總結
本文介紹了如何使用C語言連接MySQL資料庫,並通過查詢表格來獲取數據。由於MySQL的開源特性,它被廣泛應用於各種開發環境和平台,在嵌入式系統和伺服器程序的開發中也得到了廣泛應用。通過C語言訪問MySQL資料庫,可以讓開發者輕松地將關系型數據集成到他們的項目中。