MySQL C源碼是MySQL數據庫中最為重要的部分,主要用于實現與MySQL服務器的通信。它是由一組C語言源文件組成,并提供了訪問MySQL服務器的API函數。若想對MySQL進行擴展或優化,了解MySQL C源碼是必不可少的。
MYSQL mysql; mysql_init(&mysql); //初始化mysql實例 mysql_real_connect(&mysql, "localhost", "root", "password", "testdb", 0, NULL, 0); //連接mysql服務器 char query[1024]; sprintf(query, "SELECT * FROM students WHERE id='%d'", id); mysql_query(&mysql, query); //執行查詢操作 MYSQL_RES* result = mysql_store_result(&mysql); //獲取查詢結果集 MYSQL_ROW row; while ((row = mysql_fetch_row(result))) { printf("name: %s, age: %s\n", row[0], row[1]); } mysql_free_result(result); //釋放結果集內存 mysql_close(&mysql); //關閉mysql連接
以上是一個簡單的MySQL C源碼實例。其中,MYSQL結構體是連接MySQL服務器的控制塊,mysql_init()函數用于初始化MYSQL實例,mysql_real_connect()函數則用于連接MySQL服務器。在執行查詢時,將查詢語句放入query字符串中,再調用mysql_query()函數執行查詢操作。執行完畢后,用mysql_store_result()函數獲取查詢結果,再用mysql_fetch_row()函數遍歷結果集,最終用mysql_free_result()函數釋放結果集內存,并用mysql_close()函數關閉MySQL連接。