資料介紹
隨著科學技術的發展,嵌入式系統成為了科技發展的主要領域, Linus和Wince是比較常見的嵌入式系統。嵌入式開發過程離不開數據庫的應用,對于嵌入式數據庫的選擇是必要的。通常,嵌入式系統選擇的數據應該盡量小,SQLite[1]在Linux中的應用很廣泛,本設計介紹了SQLite作為一款小巧的嵌入式數據庫在Wince[2]中的應用實例。
1 SQLite數據庫的介紹與選擇
1.1 SQLite數據庫結構
SQLite數據庫結構圖如圖1所示。

1.2 SQlite數據庫的特點
SQLite是一個開源的嵌入式關系數據庫,結構緊湊,可靠性強[3]。有以下特點:
(1)使用非常簡單。只需要掌握3個核心API函數,大多數的SQL[4]語句都可以使用。
(2)占用很少的存儲器空間。SQLite完全獨立,數據庫引擎和應用程序在同一系統進程中,因此運行速度較高。
(3)支持ACID事務,在系統出現問題或電源斷電時不會出現數據丟失現象。
(4)支持多種語言,像C/C++/C#等。
(5)支持多個嵌入式操作系統平臺,如Linux系統、Wince系統等。
2 SQlite的選擇
首先,SQL Server CE是Wince自身的數據庫,必須在Wince系統中安裝3個文件才能使用,而SQLite只需要在電腦上安裝SQlite-1.0.65.0[5],把生成的SQlite.Interop.065.DLL移植到Wince系統運行的程序中,并在Visual Studio2008寫程序時添加一個引用即可,操作較簡單。其次SQLite占用很少的存儲器空間(150 KB~250 KB),但是SQL Server CE卻要占用 1 MB~3 MB的空間。最重要的是SQLite具有良好的移植性,可以應用到多個嵌入式系統,而SQL Server CE只能在Wince中運行。
3 SQLite的應用硬件及軟件平臺
本文探討中以S3C2440作為處理器ARM9的硬件平臺,以Wince6.0為應用系統,支持.NET2.0平臺。在Visual Studio 2008軟件平臺中用 C#中編寫程序,但是在新建項目中選擇智能設備時要選擇.NET2.0平臺。在Visual Studio 2008中用C#編寫程序時,第一次使用時要添加引用System.Data.SQLite,在程序中添加using指令集,這樣可以通過軟件編寫程序實現建庫建表的功能。
4 SQLite在Wince中的應用實例
4.1 Wince中顯示數據的控件DataGrid及其屬性
DataGrid控件實際上是一個固定的列集合,每一列的行數都是不確定的,可以看作一個用來顯示數據的網格。它的網格是看不見的,只有建立了數據表,才能看到其中每一行和每一列的具體內容,如果一個單元格的文本太長,就不能在單元格中全部顯示。但是在Wince系統中顯示數據的控件只有這一個,所以不能完全顯示數據這一問題正是本設計所要解決的。圖2顯示了DataGrid在Wince中的屬性。

4.2 SQLite建數據庫的步驟
SQLite建數據庫的步驟如下:
(1)通過SQLiteConnection對數據庫進行連接[6],通過軟件建數據庫,首先要有數據源,如:
SQLiteConnection conn=new SQLiteConnection(“Data Source=\\Program Files\\ maindata.db”);
對數據庫要進行操作需要執行的命令,如SQLiteCommand cmd=new SQLiteCommand();
(2)每次使用數據庫前需要打開數據庫,還需要連接數據庫,關閉數據庫;
(3)通過 CREATE TABLE SQL語句進行建表。必須給表注上表名,方便下面操作。如:
{cmd.CommandText=“CREATETABLE ServerLert(Numintrger,BedNum varchar(20),ServerItem varchar(50),ServerTime varchar(30),Passwords varchar(30));”
(4)可以通過INSERT INTO 語句進行插入數據。如:
cmd.CommandText=“INSERT INTO ServerLert(Num,BedNum,ServerItem,ServerTime) VALUES(1 ,′2′,′測血糖′,′10-12-10 15:50:00′)”;
(5)數據庫至此建成,由于插入的時間單元格不能完全顯示,因此需要通過對圖2中標注有灰色背景的TableStyles進行設置[7]。如:
DataGridTableStyle dgts=new DataGridTableStyle();
dgts.MappingName=ds.Tables[0].TableName;
DataGridTextBoxColumn dgtbc=new DataGridTextBoxColumn();
dgtbc.HeaderText=ds.Tables[0].Columns[0].ColumnName;
dgtbc.MappingName=ds.Tables[0].Columns[0].ColumnName;
dgtbc.Width=70;
dgts.GridColumnStyles.Add(dgtbc);
上面是對表中第一列進行的寬度設置主要是對DataGridTableStyle中列的格式進行設置,這就解決了顯示文本過長的問題。第二列設置80,第三列設置了170,在Wince中運行的結果。
1 SQLite數據庫的介紹與選擇
1.1 SQLite數據庫結構
SQLite數據庫結構圖如圖1所示。

1.2 SQlite數據庫的特點
SQLite是一個開源的嵌入式關系數據庫,結構緊湊,可靠性強[3]。有以下特點:
(1)使用非常簡單。只需要掌握3個核心API函數,大多數的SQL[4]語句都可以使用。
(2)占用很少的存儲器空間。SQLite完全獨立,數據庫引擎和應用程序在同一系統進程中,因此運行速度較高。
(3)支持ACID事務,在系統出現問題或電源斷電時不會出現數據丟失現象。
(4)支持多種語言,像C/C++/C#等。
(5)支持多個嵌入式操作系統平臺,如Linux系統、Wince系統等。
2 SQlite的選擇
首先,SQL Server CE是Wince自身的數據庫,必須在Wince系統中安裝3個文件才能使用,而SQLite只需要在電腦上安裝SQlite-1.0.65.0[5],把生成的SQlite.Interop.065.DLL移植到Wince系統運行的程序中,并在Visual Studio2008寫程序時添加一個引用即可,操作較簡單。其次SQLite占用很少的存儲器空間(150 KB~250 KB),但是SQL Server CE卻要占用 1 MB~3 MB的空間。最重要的是SQLite具有良好的移植性,可以應用到多個嵌入式系統,而SQL Server CE只能在Wince中運行。
3 SQLite的應用硬件及軟件平臺
本文探討中以S3C2440作為處理器ARM9的硬件平臺,以Wince6.0為應用系統,支持.NET2.0平臺。在Visual Studio 2008軟件平臺中用 C#中編寫程序,但是在新建項目中選擇智能設備時要選擇.NET2.0平臺。在Visual Studio 2008中用C#編寫程序時,第一次使用時要添加引用System.Data.SQLite,在程序中添加using指令集,這樣可以通過軟件編寫程序實現建庫建表的功能。
4 SQLite在Wince中的應用實例
4.1 Wince中顯示數據的控件DataGrid及其屬性
DataGrid控件實際上是一個固定的列集合,每一列的行數都是不確定的,可以看作一個用來顯示數據的網格。它的網格是看不見的,只有建立了數據表,才能看到其中每一行和每一列的具體內容,如果一個單元格的文本太長,就不能在單元格中全部顯示。但是在Wince系統中顯示數據的控件只有這一個,所以不能完全顯示數據這一問題正是本設計所要解決的。圖2顯示了DataGrid在Wince中的屬性。

4.2 SQLite建數據庫的步驟
SQLite建數據庫的步驟如下:
(1)通過SQLiteConnection對數據庫進行連接[6],通過軟件建數據庫,首先要有數據源,如:
SQLiteConnection conn=new SQLiteConnection(“Data Source=\\Program Files\\ maindata.db”);
對數據庫要進行操作需要執行的命令,如SQLiteCommand cmd=new SQLiteCommand();
(2)每次使用數據庫前需要打開數據庫,還需要連接數據庫,關閉數據庫;
(3)通過 CREATE TABLE SQL語句進行建表。必須給表注上表名,方便下面操作。如:
{cmd.CommandText=“CREATETABLE ServerLert(Numintrger,BedNum varchar(20),ServerItem varchar(50),ServerTime varchar(30),Passwords varchar(30));”
(4)可以通過INSERT INTO 語句進行插入數據。如:
cmd.CommandText=“INSERT INTO ServerLert(Num,BedNum,ServerItem,ServerTime) VALUES(1 ,′2′,′測血糖′,′10-12-10 15:50:00′)”;
(5)數據庫至此建成,由于插入的時間單元格不能完全顯示,因此需要通過對圖2中標注有灰色背景的TableStyles進行設置[7]。如:
DataGridTableStyle dgts=new DataGridTableStyle();
dgts.MappingName=ds.Tables[0].TableName;
DataGridTextBoxColumn dgtbc=new DataGridTextBoxColumn();
dgtbc.HeaderText=ds.Tables[0].Columns[0].ColumnName;
dgtbc.MappingName=ds.Tables[0].Columns[0].ColumnName;
dgtbc.Width=70;
dgts.GridColumnStyles.Add(dgtbc);
上面是對表中第一列進行的寬度設置主要是對DataGridTableStyle中列的格式進行設置,這就解決了顯示文本過長的問題。第二列設置80,第三列設置了170,在Wince中運行的結果。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式Linux開發:Linux環境下sqlite數據庫安裝及使用
- 【嵌入式實驗】《嵌入式數據庫 sqlite 移植及使用》
- Spring嵌入式數據庫示例
- 嵌入式數據庫
- 嵌入式數據庫在生產車間中的應用 1次下載
- 嵌入式數據庫在Java中的應用解析 0次下載
- 基于WinCE的ASPCOM組件訪問SQLite數據庫孫曉層 2次下載
- 嵌入式移動數據庫NimbleDB的實現
- 基于Linux的嵌入式實時數據庫的設計
- JAVA在SQLite嵌入式數據庫中的應用
- 嵌入式數據庫典型技術―SQLite和Berkeley DB的研究
- 嵌入式移動數據庫NimbleDB的實現
- 基于ARM 的嵌入式數據庫研究與應用
- 工控應用系統中嵌入式數據庫實時性研究
- 開源嵌入式數據庫Berkeley DB和SQLite的
- 如何使用Rust語言操作Chrome瀏覽器的SQLite數據庫 2522次閱讀
- OpenHarmony關系型數據庫概述 1087次閱讀
- 怎么創建SQLite數據庫 6048次閱讀
- SQLite數據庫多平臺應用及常見錯誤分析有哪些 1033次閱讀
- 常見的數據庫管理 2110次閱讀
- 淺談SQLite最新的SQL功能 1351次閱讀
- 基于SQLite的鴻蒙的關系型數據庫使用 4231次閱讀
- 嵌入式移動數據庫的結構體系特點及優化查詢方法研究 2346次閱讀
- linux系統POS嵌入式數據庫如何去構建 917次閱讀
- 嵌入式系統開發經常使用哪一些數據庫 1758次閱讀
- 英創信息技術嵌入式數據庫SQLC介紹 2043次閱讀
- 基于μC/OS嵌入式操作系統的嵌入式數據管理設計 1241次閱讀
- 基于嵌入式數據庫的礦場安全系統設計方案詳解 1145次閱讀
- 基于嵌入式數據庫的海量存儲技術解析 2819次閱讀
- 嵌入式設計經驗:ARM-WinCE平臺時鐘同步設計 1728次閱讀
下載排行
本周
- 1DC電源插座圖紙
- 0.67 MB | 2次下載 | 免費
- 2AN158 GD32VW553 Wi-Fi開發指南
- 1.51MB | 2次下載 | 免費
- 3AN148 GD32VW553射頻硬件開發指南
- 2.07MB | 1次下載 | 免費
- 4AN111-LTC3219用戶指南
- 84.32KB | 次下載 | 免費
- 5AN153-用于電源系統管理的Linduino
- 1.38MB | 次下載 | 免費
- 6AN-283: Σ-Δ型ADC和DAC[中文版]
- 677.86KB | 次下載 | 免費
- 7SM2018E 支持可控硅調光線性恒流控制芯片
- 402.24 KB | 次下載 | 免費
- 8AN-1308: 電流檢測放大器共模階躍響應
- 545.42KB | 次下載 | 免費
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費
- 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 138次下載 | 1 積分
- 3基于STM32單片機智能手環心率計步器體溫顯示設計
- 0.10 MB | 130次下載 | 免費
- 4使用單片機實現七人表決器的程序和仿真資料免費下載
- 2.96 MB | 44次下載 | 免費
- 53314A函數發生器維修手冊
- 16.30 MB | 31次下載 | 免費
- 6美的電磁爐維修手冊大全
- 1.56 MB | 24次下載 | 5 積分
- 7如何正確測試電源的紋波
- 0.36 MB | 17次下載 | 免費
- 8感應筆電路圖
- 0.06 MB | 10次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論