MySQL是一種流行的開源關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在C語言中,我們可以通過使用MySQL提供的C API來連接、查詢和操作數(shù)據(jù)庫。
首先,我們需要安裝MySQL C API,可以通過在終端中運行以下命令在Ubuntu中進行安裝:
sudo apt-get install libmysqlclient-dev
然后,我們需要包含MySQL的頭文件:
#include
接下來,建立連接:
MYSQL* conn; conn = mysql_init(NULL); if(conn == NULL){ fprintf(stderr, "Error %u: %s\n", mysql_errno(conn), mysql_error(conn)); exit(1); } if(!mysql_real_connect(conn, "localhost", "user", "password", "database", 0, NULL, 0)){ fprintf(stderr, "Error %u: %s\n", mysql_errno(conn), mysql_error(conn)); exit(1); }
這個代碼片段建立一個連接到名為“database”的MySQL數(shù)據(jù)庫的本地服務(wù)器,使用用戶名“user”和密碼“password”。如果連接失敗,它將輸出錯誤消息并退出程序。
現(xiàn)在,我們可以使用MySQL API執(zhí)行查詢。以下是一個簡單的示例:
if(mysql_query(conn, "SELECT * FROM users")){ fprintf(stderr, "Error %u: %s\n", mysql_errno(conn), mysql_error(conn)); exit(1); } MYSQL_RES* result = mysql_store_result(conn); if(result == NULL){ fprintf(stderr, "Error %u: %s\n", mysql_errno(conn), mysql_error(conn)); exit(1); } MYSQL_ROW row; while((row = mysql_fetch_row(result))){ printf("%s %s %s\n", row[0], row[1], row[2]); } mysql_free_result(result);
這個代碼片段執(zhí)行一個名為“users”的表的查詢,并將所有結(jié)果作為字符串數(shù)組返回。然后,它遍歷結(jié)果集并將每一行輸出到控制臺。
總的來說,MySQL C API允許開發(fā)人員輕松地在C語言中訪問和操作MySQL數(shù)據(jù)庫。上面的示例只是入門,您可以在MySQL文檔中找到更多詳細信息。