用Dev-Cpp搭建MySQL++編程環境 小弟這兩天要寫個小程式,涉及到資料儲存處理比較多,想安裝個資料庫。以前用過一段時間MS SQL Server 2000,整整一張安裝盤,安裝配置一下就得大半天。對付芝麻大的小程式,真是殺雞用牛刀。要找一個輕量級的資料庫,首先想到的就是MySQL,久聞大名,但從未謀面,今天想見識見識它的真功夫 到MySQL官方網站看了一下,不得了,這傢伙身材雖不大,才十幾兆,功能已經向企業級看齊了,完全不像是幾年前聽說的那個小玩意。再看看我關心的編程介面,不錯不錯,還有個叫MySQL++的C++ wrapper,而且是STL風格的介面,呵呵,這樣一套完美的封裝使資料庫編程完全成為了一種享受, 來一段看看: 代碼:vector<mystruct> v;Query q = connection.query();q << "SELECT * FROM mytable";q.storein(v);for (vector<mystruct>::iterator it = v.begin(); it != v.end(); ++it) { cout << "Price: " << it->price << endl; 小弟使用資料庫機會不多,知之甚少,如有錯誤請指正。 一、下載 1、MySQL5.0安裝程式(精簡版) http://dev.mysql.com/get/Downloads/M...rix.net/mysql/ 2、MySQL++來源程式 http://tangentsoft.net/mysql++/relea...+-2.1.1.tar.gz 3、Dev-Cpp 4.9.9.2 http://www.yaguo.com/web/softroom/dl.asp?addid=5066 二、安裝 1、安裝Dev-Cpp Dev-Cpp是windows平台下的一套開發C++程式的GUI,整合了mingw編譯工具。安裝這個太簡單樂,不多說,GUI的安裝方式,一直點OK就行啦 安裝完成後,要記得把mingw編譯器的路徑C:\Dev-Cpp\bin添加行系統PATH環境裡。點開“我的電腦->屬性->進階->環境變數->PATH”,在文字框最後加上“;C:\Dev-Cpp\bin”。 2、安裝MySQL5.0 也是GUI的安裝方式,一定要裝安裝路徑設定為“C:\MySQL”,否則編譯MySQL++原始碼會有問題。其它預設就OK可以樂。安裝完成了,別忘了配置一下Server Instance。 3、編譯MySQL++原始碼 解壓 mysql++-2.1.1.tar.gz 到 D:\CPP_LIB\mysql++ (這是我的安裝路徑,自已可以隨意調整啦) 在目錄C:\MySQL\lib\opt下開啟命令列,執行下列命令列,產生mingw編譯器能認識的動態連結程式庫:代碼: C:\MySQL\lib\opt>dlltool -k -d D:\CPP_LIB\mysql++\libmysqlclient.def -l libmysqlclient.a 修改make檔案,開啟D:\CPP_LIB\mysql++\Makefile.mingw,在檔案開頭處加上串連選項。(用預設選項可能會編譯不過哦 )代碼: # linker flags LDFLAGS = -enable-runtime-pseudo-reloc 在目錄D:\CPP_LIB\mysql++下開啟命令列,執行make命令,就一切搞掂啦 代碼: D:\CPP_LIB\mysql++>make -f Makefile.mingw all 檢查一下,你的D:\CPP_LIB\mysql++\lib目錄下是否產生了兩個檔案:libmysqlpp.a,mysqlpp.dll。 D:\CPP_LIB\mysql++\examples目錄下是否產生了一堆exe檔案:代碼: D:\CPP_LIB\mysql++\examples>dir *.exe2006-04-21 23:08 1,796,419 resetdb.exe2006-04-21 22:08 1,812,535 simple1.exe2006-04-21 22:08 1,814,477 simple2.exe2006-04-21 22:09 1,810,725 simple3.exe2006-04-21 22:09 1,808,913 usequery.exe2006-04-21 22:09 1,838,997 multiquery.exe2006-04-21 22:10 1,830,994 custom1.exe2006-04-21 22:10 1,800,529 custom2.exe2006-04-21 22:11 1,814,019 custom3.exe2006-04-21 22:11 1,850,548 custom4.exe2006-04-21 22:12 1,846,565 custom5.exe2006-04-21 22:12 1,834,823 custom6.exe2006-04-21 22:13 1,876,140 dbinfo.exe2006-04-21 22:13 1,805,388 fieldinf1.exe2006-04-21 22:14 1,784,760 xaction.exe2006-04-21 22:14 1,634,397 cgi_image.exe2006-04-21 22:14 1,615,386 load_file.exe2006-04-21 22:15 1,669,868 updel.exe 三、測試 在D:\CPP_LIB\mysql++\examples目錄下開啟命令列,執行剛剛編譯出的resetdb,初始化資料庫配置:代碼: D:\CPP_LIB\mysql++\examples>resetdbConnecting to database server...Dropping existing stock table...Creating new stock table...Populating stock table...Reinitialized sample database successfully. 然後一個個地試試該目錄下那些exe檔案,看看效果 這裡舉兩個例子:代碼: D:\CPP_LIB\mysql++\examples>simple1We have: Nurnberger Brats Pickle Relish Hot Mustard Hotdog BunsD:\CPP_LIB\mysql++\examples>usequery Nurnberger Brats 92 1.5 8.79 2005-03-10 Pickle Relish 87 1.5 1.75 1998-09-04 Hot Mustard 75 0.95 0.97 1998-05-25 Hotdog Buns 65 1.1 1.1 1998-04-23 呵呵,現在可以寫自已的代碼了。有機會小弟貼一些出來請大家指正 __________________ I believe I can fly. 此帖於 06-04-22 12:18 被 sweord 編輯. |