C語言是一種強(qiáng)大的編程語言,可以編寫出各種各樣的程序。而MYSQL是一種流行的數(shù)據(jù)庫,提供了快速存儲和檢索數(shù)據(jù)的能力,這篇文章將介紹如何將數(shù)據(jù)從C語言寫入MYSQL中。
首先,我們需要準(zhǔn)備好MYSQL環(huán)境,包括MYSQL服務(wù)器和MYSQL C API庫。
以下是樣例程序,定義了一個學(xué)生信息結(jié)構(gòu)體,然后使用MYSQL C API將學(xué)生信息寫入MYSQL數(shù)據(jù)庫:
#include#include #include typedef struct student_info{ char name[20]; int age; float score; }StudentInfo; int main() { MYSQL *conn; MYSQL_RES *res; MYSQL_ROW row; char server[] = "localhost"; char user[] = "root"; char password[] = "123456"; char database[] = "test_db"; conn = mysql_init(NULL); if (conn == NULL) { fprintf(stderr,"mysql_init() failed\n"); exit(1); } if (mysql_real_connect(conn, server,user, password, database, 0, NULL, 0) == NULL) { fprintf(stderr, "%s\n", mysql_error(conn)); mysql_close(conn); exit(1); } StudentInfo stu; strcpy(stu.name, "Jack"); stu.age = 20; stu.score = 90.5; char query[100]; sprintf(query, "INSERT INTO student(name, age, score) VALUES('%s', %d, %f)", stu.name, stu.age, stu.score); if (mysql_query(conn, query)) { fprintf(stderr, "%s\n", mysql_error(conn)); mysql_close(conn); exit(1); } mysql_close(conn); return 0; }
在上面的程序中,我們首先初始化MYSQL操作句柄,然后連接到MYSQL服務(wù)器,指定連接的服務(wù)器地址、用戶名、密碼以及數(shù)據(jù)庫名稱。接下來,我們定義了一個學(xué)生信息結(jié)構(gòu)體,并將學(xué)生信息寫入MYSQL數(shù)據(jù)庫中,這里使用了sprintf函數(shù)將學(xué)生信息格式化為一個SQL語句,然后使用mysql_query函數(shù)將SQL語句傳遞給MYSQL服務(wù)器執(zhí)行。
總的來說,使用C語言將數(shù)據(jù)寫入MYSQL數(shù)據(jù)庫中并不難,只需安裝好MYSQL服務(wù)器和MYSQL C API庫,就可以通過MYSQL C API庫提供的各種函數(shù)實(shí)現(xiàn)此功能。我們可以通過MYSQL C API庫來執(zhí)行各種SQL語句,取回執(zhí)行結(jié)果,并操作MYSQL數(shù)據(jù)庫中的數(shù)據(jù)。