程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Lazarus實戰開發之數據庫SQLite(WIN32/WINCE)

Lazarus實戰開發之數據庫SQLite(WIN32/WINCE)

編輯:Delphi

 SQLite是一個輕量級的嵌入式數據庫,在PC上大可不用它,但是在WINCE上,他就起很大作用了(Access在WINCE上停止升級,SQL CE又太龐大)。

  * 在Lazarus for WIN32上使用SQLite

  1. 安裝SQLite for WIN32: VC2005編譯SQLite, http://blog.csdn.net/hellogv/archive/2008/05/06/2399700.aspx  ,把編譯後的sqlite3.dll放在Windows系統文件夾之下;也可以直接到 www.sqlite.org下載現有的sqlite3.dll。

  2. 安裝LAZARUS的SQLite控件:\lazarus\components\sqlite\sqlite3laz.lpk

  在WIN32編寫好SQLite數據庫程序,然後修改編譯器,從而生成WINCE平台下的數據庫程序,這樣可以大大減少交叉編譯~調試所浪費的時間!

  * 在Lazarus for WINCE上使用SQLite

  1. 編譯得到SQLite3.dll for wince

  2. 先進LAZARUS Application工程,添加SQLITE3DATASET控件

  3. 您必須先設定項目的編譯器屬性,請點選選單項目: Project > Compiler options...,點選Path分頁,並把LCL Widget改編為Wince;點選Code分頁,並把target platform改變為arm-wince。

  4. 編譯時會提出Fatal: Can't find unit PropEdits used by registersqlite3 這樣的錯誤,這時就需要修改\lazarus\components\sqlite\registersqlite3.pas的代碼

  5. 把PropEdits,ComponentEditors,SqliteComponentEditor 注釋掉; 把RegisterComponentEditor(TSqlite3Dataset,TSqliteEditor) ;  RegisterPropertyEditor(TypeInfo(String),TSqlite3Dataset,'FileName',TFileNamePropertyEditor); 注釋掉

  6. 重新編譯即可通過。

  附:使用DBGrid等一小部分數據敏感控件時,即使編譯通過,但是在WINCE上運行還是會提出“Access violation ”這類錯誤,DBEDIT等其他數據敏感控件則可以正常使用!


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved