C語言鏈結mysql資料庫

2021-08-11 11:28:46 字數 1778 閱讀 8981

一、解釋一下函式功能和用法

1.mysql_real_connect

函式原型:mysql *mysql_real_connect(mysql *mysql, const char *host, const char *user, const char *passwd, const char *db, unsigned int port, const char *unix_socket, unsigned long client_flag)

引數說明:

host:本地用localhost或127.0.0.1,遠端寫ip;

user、passwd:登陸資料庫的使用者名稱密碼

db:資料庫名

port:資料庫所用的埠(mysql一般為3306)

unix_socket:先寫個null(官方解釋:如果unix_socket不是null,該字串描述了應使用的套接字或命名管道)

client_flag:先寫個0(指定特定功能)

2.mysql_real_query

函式原型:int mysql_real_query(mysql *mysql, const char *query, unsigned int length)

引數說明:

query:sql語句;

length:sql語句長度

3.mysql_store_result

函式原型:mysql_res *mysql_store_result(mysql *mysql)

返回值說明:具有多個結果的mysql_res結果集合。如果出現錯誤,返回null。

4.mysql_fetch_row

函式原型:mysql_row mysql_fetch_row(mysql_res *result)

引數說明:具有多個結果的mysql_res結果集合

二、上示例**

#include #include #include #include "mysql.h"

int main()

else

break;

case 2:

//select

printf("sql語句: %s\n", select_query);

if (mysql_query(&conn, select_query) != 0)

else

else }}

break;

case 3:

printf("姓名:\n");

scanf("%s", str1);

strcat(delete_query, str1);

strcat(delete_query, "'");

//delete

printf("sql語句: %s\n", delete_query);

res = mysql_real_query(&conn, delete_query, (unsigned int)strlen(delete_query));

if (!res)

else

break;

}} mysql_close(&conn);

} return 0;

}

三、結果截圖

四、注意點

由於mysql所用的標頭檔案不是c語音標準庫,所以一定要加上外部庫,不然編譯不過。

找不到庫的,要先安裝libmysqlclient-dev(整套流程教程傳送門:

C語言鏈結mysql資料庫錯誤

一 編譯錯誤 eg 用gcc編譯出現如下的錯誤 test.c text 0x5e 對 mysql init 未定義的引用 但是在標頭檔案中已經 include 解決方法是 gcc xx.c lmysqlclient l usr lib64 mysql二 由 mysql config libs cfl...

c 鏈結MySql資料庫

用mysql建立乙個表,然後輸出到控制台!首先電腦安裝完成mysql資料庫。1.net start mysql80 mysql80 為自己的資料庫名稱 接下來看到自己資料庫 服務已啟動成功 2.mysql u root p回車後 在enter password 輸入自己的mysql資料庫密碼,回車。...

資料探勘R語言鏈結資料庫MYSQL

r語言連線資料庫常用的方法有2種 1 使用r資料庫介面 連線mysql,使用rmysql包,使用前rmysql包要先安裝。library rmysql 連線方式有2種 1 使用dbconnect conn dbconnect mysql dbname rmysql username rmysql p...