linux下c語言學習筆記——操作mysql
linux下c語言學習筆記——操作mysql
By falcon 2006年3月30日晚上完成
版權聲明:可以自由轉載,但是必須保留原作者名和本站地址,謝謝
[由于最近比較忙,沒有時間來得及整理,下面所有代碼的具體編譯方法和原理請參考11樓以后的回復,謝謝]
今天上數據庫的時候剛上到嵌入式sql,感覺非常有意思,上課的時候就想反正做搜索引擎要用到c連接mysql數據庫的,到底是怎么實現?想入非非,呵呵.
下來的時候趕緊找資料,剛才搜索了幾下,終于找到一些:
1,[比較詳細]在 C 里嵌入 SQL:http://www.pgsqldb.org/pgsqldoc-7.4/ecpg.html
2,[在MySQL數據庫中使用C執行SQL語句]:http://www.dvbbs.net/tech/data/2006031818989.asp
3,MySQL客戶工具和API:http://www.yesky.com/imagesnew/software/mysql/manual_Clients.html
4,基于mysql的高性能數據庫應用開發:http://cache.baidu.com/c?word=mysql%3B%5F%3Breal%3B%5F%3Bconnect%2C%B2%CE%CA%FD&url=http%3A//www%2Edaima%2Ecom%2Ecn/Info/76/Info27780/&b=0&a=2&user=baidu
大家一起來開始練習羅
注:下面的所有例子在mandriva linux下測試通過
1,使用c語言操作mysql之前,先在mysql里頭創建一個數據庫,一個表,在表里頭添加數據如下:
創建數據庫,庫名為cusemysql:
mysql>create database cusemysql;
創建表,表名為:
mysql>use cusemysql;
mysql>create table children(childno int not null unique,fname varchar(20),age int);
添加一點數據哦:
mysql>insert into children values(5,"花兒",10);
對拉,為了方便起見,把表的大致樣子給大家看看
childno fname age
1 小星 9
2 大量 15
2 ,下面進行具體的操作
插入:insert
好的,我們現編輯一段c代碼,取名為insert.c
Code:
[Ctrl+A Select All]
代碼寫完了,要編譯哦
#gcc -o insert insert.c -L /usr/local/mysql/lib/mysql/*.a -lz
ok,現在我們執行看看
#./insert
Connection Success
Inserted 1 rows
year,果然可以,呵呵
不信到mysql下看看表children中是否多了剛才插入的那一行數據
注:也許你會問上面gcc的命令參數是什么意思阿,其實,我也不太清楚,呵呵
大概是要把mysql下的某個特定庫包含進來,可是我不知道具體是個什么庫,所以用*.a全部包含進來拉
其實只要包含mysqlclient.a就可以,你試試看
更新:update
我們只要把上面的代碼中的
res = mysql_query(&my_connection, "insert into children values(10,'Ann',5)");
換成
res = mysql_query(&my_connection, "update children set age=20 where childno<5 ");
即可
上面語句實現的功能是,把編號小于5的所有孩子的年齡全部改成20歲
檢索:select
看代碼之前,最好是先看藍色字體的部分[介紹了代碼中用到的一些函數的作用]
Code:
[Ctrl+A Select All]
上面語句實現的功能是:檢索出年齡小于20歲的小孩的信息,不過沒有對信息進行任何處理哦
下次我們對數據進行一定的處理
這里介紹上面用到的幾個函數:
檢索并處理[比較全面哦,呵呵]:select
下面是詳細的代碼:
Code:
[Ctrl+A Select All]
到此一些基本的操作都已經實現拉,呵呵,怎一個爽自了得
大家快點來阿
By falcon 2006年3月30日晚上完成
版權聲明:可以自由轉載,但是必須保留原作者名和本站地址,謝謝
[由于最近比較忙,沒有時間來得及整理,下面所有代碼的具體編譯方法和原理請參考11樓以后的回復,謝謝]
今天上數據庫的時候剛上到嵌入式sql,感覺非常有意思,上課的時候就想反正做搜索引擎要用到c連接mysql數據庫的,到底是怎么實現?想入非非,呵呵.
下來的時候趕緊找資料,剛才搜索了幾下,終于找到一些:
1,[比較詳細]在 C 里嵌入 SQL:http://www.pgsqldb.org/pgsqldoc-7.4/ecpg.html
2,[在MySQL數據庫中使用C執行SQL語句]:http://www.dvbbs.net/tech/data/2006031818989.asp
3,MySQL客戶工具和API:http://www.yesky.com/imagesnew/software/mysql/manual_Clients.html
4,基于mysql的高性能數據庫應用開發:http://cache.baidu.com/c?word=mysql%3B%5F%3Breal%3B%5F%3Bconnect%2C%B2%CE%CA%FD&url=http%3A//www%2Edaima%2Ecom%2Ecn/Info/76/Info27780/&b=0&a=2&user=baidu
大家一起來開始練習羅
注:下面的所有例子在mandriva linux下測試通過
1,使用c語言操作mysql之前,先在mysql里頭創建一個數據庫,一個表,在表里頭添加數據如下:
創建數據庫,庫名為cusemysql:
mysql>create database cusemysql;
創建表,表名為:
mysql>use cusemysql;
mysql>create table children(childno int not null unique,fname varchar(20),age int);
添加一點數據哦:
mysql>insert into children values(5,"花兒",10);
對拉,為了方便起見,把表的大致樣子給大家看看
childno fname age
1 小星 9
2 大量 15
2 ,下面進行具體的操作
插入:insert
好的,我們現編輯一段c代碼,取名為insert.c
Code:
[Ctrl+A Select All]
代碼寫完了,要編譯哦
#gcc -o insert insert.c -L /usr/local/mysql/lib/mysql/*.a -lz
ok,現在我們執行看看
#./insert
Connection Success
Inserted 1 rows
year,果然可以,呵呵
不信到mysql下看看表children中是否多了剛才插入的那一行數據
注:也許你會問上面gcc的命令參數是什么意思阿,其實,我也不太清楚,呵呵
大概是要把mysql下的某個特定庫包含進來,可是我不知道具體是個什么庫,所以用*.a全部包含進來拉
其實只要包含mysqlclient.a就可以,你試試看
更新:update
我們只要把上面的代碼中的
res = mysql_query(&my_connection, "insert into children values(10,'Ann',5)");
換成
res = mysql_query(&my_connection, "update children set age=20 where childno<5 ");
即可
上面語句實現的功能是,把編號小于5的所有孩子的年齡全部改成20歲
檢索:select
看代碼之前,最好是先看藍色字體的部分[介紹了代碼中用到的一些函數的作用]
Code:
[Ctrl+A Select All]
上面語句實現的功能是:檢索出年齡小于20歲的小孩的信息,不過沒有對信息進行任何處理哦
下次我們對數據進行一定的處理
這里介紹上面用到的幾個函數:
|
檢索并處理[比較全面哦,呵呵]:select
下面是詳細的代碼:
Code:
[Ctrl+A Select All]
到此一些基本的操作都已經實現拉,呵呵,怎一個爽自了得
大家快點來阿