MySQL C API的一次呼叫體驗

2022-09-02 13:03:07 字數 1355 閱讀 3774

mysql提供了標準的c api,

# rpm --import rpm-gpg-key-centos-5

執行後,果然非常ok了,安裝完mysql-devel後,在/usr/include/mysql下可發現mysql的標頭檔案,/usr/lib/mysql下可以發現mysql的庫檔案;這是我們編譯和連線所需要的。

用mysql資料庫自帶的test資料庫來測試一下吧:

首先我在mysql的test庫中建立了乙個table t1 ;

create table t1(id int(11) default null, name varchar(100) default null);

插入兩條臨時資料:

insert into t1 (id,name) values(「1001」,「the grade is good!」);

insert into t1 (id,name) values(「1002」,  「the grade is good also!」);

檢視表結構:

desc t1;

或者show columns from t1;

接下來我們來使用輪子吧,大概是嘲諷吧,大家都喜歡把類庫稱為輪子,這個輪子真有點大,我們來看下吧!

#include

#include

#include

int main()

else

printf("connected ..\n");

//get the result from the executing select query

query = "select * from t1";

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

if(t)

else

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

res = mysql_store_result(&mysql);

while(row = mysql_fetch_row(res))

期間當然出來不少問題了,比如mysql的例項是乙個引用變數,常常會忽略,或者誤寫為%,還有,strlen函式從屬於string.h的標頭檔案,我一直誤認為是在stdio.h中,呵呵,手生的很呢

最重要的時候到了,呵呵,自然是要mysql的庫檔案和標頭檔案了;

gcc testsql.c -i/usr/include/mysql -l/usr/lib/mysql –lmysqlclient

如果不出意外,當然,我是指天塌下來,應該是能順利編譯通過的;

執行的話,當然會列印記錄嘍;

結構體的第一次

我是乙隻很菜很菜的鳥,現已大二,可以說大一荒廢了一年,現在竭力惡補以前的知識,今天第一次使用結構體。有本事才能有尊嚴,找到方向就得去努力,但是不知道有什麼正確的方法,如果有大神路過,請指教。在此謝過。這是乙個簡單的學生管理系統,其實根本算不上系統,獻醜啦。2012年2月29日 00 58 02 結構...

第一次用結構體

e 百步穿楊 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status practice hdu 2550 description 時維九月,序屬三秋,遼軍大舉進攻mca山,戰場上兩軍正交鋒.遼軍統帥是名...

理解fork 的一次呼叫兩次執行

fork 函式是linux裡多程序程式設計的基礎,為linux成為強大的多使用者作業系統提供了強有力的支援。但是對於很多初學者而言,雖然知道怎麼寫多程序的程式,知道怎麼fork 出乙個子程序,卻很少有人能夠理解fork 的最有特點的乙個性質 一次呼叫,兩次執行。程序在記憶體裡有三部分的資料 段 堆疊...