關於mysql資料庫的簡單例子

2021-06-18 04:11:44 字數 2973 閱讀 7721

一.連線mysql資料庫

乙個最簡單的程式示例:

[cpp]view plain

copy

#include 

#include "mysql.h"

int main()    

它的編譯命令為:gcc -o connect connect.c -i/usr/include/mysql -l/usr/lib/mysql -lmysqlclient

sudo apt-get install libmysqlclient15-dev

步驟:1.初始化mysql的連線控制代碼

在連線mysql資料庫之前,首先呼叫mysql_init()函式以初始化乙個連線控制代碼。若建立成功,則返回乙個新建立的鏈結控制代碼的指標;否則返回null

mysql_init()函式的原型如下:

mysql *mysql_init(mysql *);

2.實際連線資料庫

在呼叫mysql_init()函式初始化mysql控制代碼以後,呼叫mysql_real_connect()函式實際進行與mysql伺服器的鏈結。

mysql_real_connect()函式原型如下:

mysql *mysql_real_connect(mysql *mysql, const char *host, const char *user, const char *passwd, cosnt char *db, unsigned int port, const char *name_socket, unsigned long client_flag);

其中的引數含義:

mysql 是mysql連線控制代碼的指標。

host 既可以是主機名也可以是ip位址。如果連線的是本地機器,則其值為「localhost」

user 指定登入mysql伺服器的使用者名稱

passwd 指定使用者user的密碼

db 是資料庫名稱

port 應該為0,不為0則將其值作為tcp/ip連線的埠號

name_socket 預設為null,如不為null,則該字串描述了應使用的套接字或命名管道

client_flag 通常為0  

二. 資料查詢

[cpp]view plain

copy

#include 

#include 

#include "mysql.h"

int main()  

else

printf("connected mysql successfully!\n");  

query = "select * from student";    //要查詢的sql語句

flag = mysql_real_query(&mysql, query, (unsigned int)strlen(query));  

if (flag)   //非0查詢失敗

else

printf("[%s] made...\n", query);  

res = mysql_store_result(&mysql);   //儲存查詢結果

while (row = mysql_fetch_row(res))  

mysql_close(&mysql);  

return 0;  

}  

函式說明:

(1) int mysql_real_query(mysql *mysql, const char *query, unsigned long length);

執行指定為帶計數的字串query的sql查詢。查詢成功返回0;

(2) mysql_real_query()的輔助函式及其用法

函式原型

用法mysql_store_result()

將查詢的全部結果讀取到客戶端。查詢成功後必須呼叫mysql_store_result()

mysql_num_field()

返回結果集中的行數

mysql_fetch_row()

檢索結果集的下一行

三.新增資料

[cpp]view plain

copy

#include 

#include 

#include "mysql.h"

int main()  

else

printf("connected mysql successfully!\n");  

query[0] = "insert into student (sno, sname)values(1010,'kobe')";  

query[1] = "insert into student (sno, sname)values(1020,'tmc')";  

for (i = 0; i < 2; i++)  

}     

mysql_close(&mysql);  

return 0;  

}  

四.刪除資料

[cpp]view plain

copy

#include 

#include 

#include "mysql.h"

int main()  

else

printf("connected mysql successfully!\n");  

query = "delete from student where sno = '1001'";  

if (!mysql_real_query(&mysql, query, (unsigned int)strlen(query)))  

mysql_close(&mysql);  

return 0;  

C 操作MySQL資料庫的簡單例子

字型大小 小中大 示例演示了用c 操作mysql的方法,提供了三個可重用的類mysqldbutil,mysqlpageutil,page。本示例由 c 操作access資料庫的簡單例子 http www.albertsong.com read 56.html 修改而來。將bin目錄裡的mysql.d...

簡單mysql資料庫 簡單的MYSQL資料庫

create database db a character set gbk 建立資料庫,並選擇指定其字元字集gbk use tb a 選擇資料庫 create table tb user id int 10 unsigned not null auto increment,name varchar...

關於Mysql資料庫

1 首先從mysql儲存引擎說起 什麼是儲存引擎呢?在mysql中 儲存引擎是指儲存mysql資料表的不同的儲存技術 這樣可以滿足不同的業務需求 常見的mysql儲存引擎 儲存技術 innodb memory myisam 2 innodb的特點 支援事務 支援外來鍵 支援自動增長列 優點 提供良好...