在現代的軟件開發中,數據庫是必不可少的。而作為一種被廣泛使用的編程語言,C語言也能夠很好地與數據庫進行交互。其中,MySQL是一種十分常用的關系型數據庫,今天我們就來看看C語言如何與MySQL數據庫進行交互。
#include#include #include int main(int argc, const char * argv[]) { MYSQL *conn; MYSQL_RES *res; MYSQL_ROW row; char server[] = "localhost"; char user[] = "root"; char password[] = "******"; char database[] = "test"; conn = mysql_init(NULL); if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } if (mysql_query(conn, "SELECT * FROM user")) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } res = mysql_use_result(conn); printf("id\tname\tgender\n"); while ((row = mysql_fetch_row(res)) != NULL) { printf("%s\t%s\t%s\n", row[0], row[1], row[2]); } mysql_free_result(res); mysql_close(conn); }
上面是一個簡單的示例代碼,其中主要包括了MySQL的連接、查詢以及結果處理三個部分。具體來說,我們首先需要定義一個MYSQL類型的指針conn,并通過mysql_init函數進行初始化。
conn = mysql_init(NULL);
接下來,我們通過mysql_real_connect函數進行連接,其中包含了MySQL服務器的IP地址、用戶名、密碼和要連接的數據庫名等信息。
if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); }
如果連接失敗,我們則需要打印出錯誤信息并退出程序。
連接成功后,我們可以通過mysql_query函數執行SQL語句,如查詢語句。
if (mysql_query(conn, "SELECT * FROM user")) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); }
接著,我們則需要通過mysql_use_result函數獲得結果集。
res = mysql_use_result(conn);
在結果集不為空的情況下,我們依次通過mysql_fetch_row函數獲取每一行的數據,并進行處理。在本例中,我們只是簡單地將查詢結果打印出來。
while ((row = mysql_fetch_row(res)) != NULL) { printf("%s\t%s\t%s\n", row[0], row[1], row[2]); }
最后,我們還需要調用mysql_free_result和mysql_close函數釋放資源并關閉連接。
mysql_free_result(res); mysql_close(conn);
綜上,以上就是C語言與MySQL數據庫進行交互的基本示例。希望能夠對大家有所幫助。
上一篇mysql eists