色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

探究SQLite在嵌入式系統Wince中的應用

電子工程師 ? 來源:微型機與應用蔣晶,郝繼 ? 作者:微型機與應用蔣晶 ? 2021-03-31 10:39 ? 次閱讀

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

1 SQLite數據庫的介紹與選擇

1.1 SQLite數據庫結構

SQLite數據庫結構圖如圖1所示。

1.2 SQlite數據庫的特點

SQLite是一個開源的嵌入式關系數據庫,結構緊湊,可靠性強。有以下特點:

(1)使用非常簡單。只需要掌握3個核心API函數,大多數的SQL語句都可以使用。

(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,把生成的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對數據庫進行連接,通過軟件建數據庫,首先要有數據源,如:

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中運行的結果。如圖3所示。

4.3 Wince通過DataGrid屬性建數據庫的分析

DataGrid在應用于基于Wince的Windows mobile智能設備時,主要針對DataGridTableStyle屬性進行設置。根據應用于Windows mobile的原理對基于Wince的ARM9的嵌入式設備中建數據庫還是行不通。對其列的屬性進行操作設置仍然改變不了列的寬度,所以這種路徑行不通。試了很多種方法,最后通過軟件編程進行設置,得到了圖3的結果。比較DataGridTableStyl進行設置與軟件設置發現,問題在于表的MappingName與列的MappingName設置時,必須對應才能實現修改功能。

用DataGridTableStyle設置,如果列的MappingName與數據庫中的建表的列不對應,則映射不存在,從而找不到網格去顯示數據,更無法對數據的列寬進行操作。所以通過軟件編程,可以對建在緩存區域中的每一張表中所有的列進行操作,解決文本過長不能完全顯示的問題。

通過上面的介紹可以看出,SQLite作為開源的嵌入式數據庫應用在Wince中的一個優點就是建表比較簡單,不像SQL CE數據庫,在Wince運行中需要先創建表,把所建的數據庫放在Wince的系統中,添加數據源時再去綁定這個數據源。對于在.net2.0平臺建立的數據庫,添加數據源時無法找到路徑,所以這種方法不可行。通過SQLite軟件創建數據庫的方法則可以改善上述不足。SQLite作為一款小巧的嵌入式數據庫,發展前景很大,在基于ARM的Wince操作系統有著廣泛應用。

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5090

    文章

    19176

    瀏覽量

    306892
  • API
    API
    +關注

    關注

    2

    文章

    1510

    瀏覽量

    62288
  • 數據庫
    +關注

    關注

    7

    文章

    3845

    瀏覽量

    64592
  • ACI
    ACI
    +關注

    關注

    0

    文章

    6

    瀏覽量

    9976
收藏 人收藏

    評論

    相關推薦

    CPLD 嵌入式系統的應用

    現代電子設計領域,復雜可編程邏輯器件(CPLD)因其靈活性、成本效益和快速開發周期而在嵌入式系統扮演著重要角色。 1. CPLD簡介 CPLD是一種集成電路,其內部包含可編程邏輯塊
    的頭像 發表于 01-23 09:50 ?73次閱讀

    PLD嵌入式系統的應用實例

    隨著技術的發展,嵌入式系統各個領域扮演著越來越重要的角色。從簡單的家用電器到復雜的工業控制系統嵌入式
    的頭像 發表于 01-20 09:42 ?86次閱讀

    MPU嵌入式系統的應用

    一、MPU的基本功能 微處理器單元(MPU)是嵌入式系統的大腦,負責執行程序指令、處理數據和控制其他硬件設備。MPU的基本功能包括: 指令執行:MPU能夠從存儲器讀取指令,解碼這些
    的頭像 發表于 01-08 09:26 ?185次閱讀

    LDO嵌入式系統的應用 常見LDO故障及解決方法

    LDO嵌入式系統的應用 LDO(Low Dropout Regulator,低降壓線性穩壓器)是一種常用的電源管理集成電路,它在嵌入式
    的頭像 發表于 12-13 09:08 ?808次閱讀

    嵌入式系統開發與硬件的關系 嵌入式系統開發常見問題解決

    嵌入式系統開發與硬件的關系 嵌入式系統是專為特定應用設計的計算機系統,它們通常嵌入在所控制的設備
    的頭像 發表于 12-09 09:38 ?396次閱讀

    HAL庫嵌入式系統的應用

    HAL庫(Hardware Abstraction Layer Library,硬件抽象層庫)嵌入式系統扮演著至關重要的角色。以下是HAL庫
    的頭像 發表于 12-02 11:32 ?817次閱讀

    mmc卡在嵌入式系統的使用

    隨著科技的發展,嵌入式系統我們的日常生活扮演著越來越重要的角色。從智能手機到家用電器,再到工業控制系統
    的頭像 發表于 11-25 09:58 ?357次閱讀

    PROM器件嵌入式系統的應用

    PROM(Programmable Read-Only Memory,可編程只讀存儲器)器件嵌入式系統中有著廣泛的應用。以下是對PROM器件嵌入
    的頭像 發表于 11-23 11:22 ?632次閱讀

    什么是嵌入式?一文讀懂嵌入式主板

    現代科技浪潮嵌入式技術已成為支撐各種智能設備和系統運行的核心力量。那么,究竟什么是嵌入式嵌入式
    的頭像 發表于 10-16 10:14 ?1345次閱讀

    嵌入式系統的未來趨勢有哪些?

    會更加模塊化和集成化,允許更容易的硬件和軟件的切換和升級。這會提高系統的可維護性和可擴展性,會使得系統能夠適應不斷變化的應用需求。 5. 生態可持續性與環保材料
    發表于 09-12 15:42

    嵌入式系統的實時操作系統

    嵌入式RTOS是嵌入式應用程序運行、相互交互和與外界通信的底層軟件機制。本節,您將了解嵌入式軟件開發人員使用哪些流行RTOS以及它們運行
    的頭像 發表于 08-20 11:28 ?532次閱讀

    機器視覺嵌入式的應用

    機器視覺嵌入式系統的應用是一個廣泛而深入的話題,涉及到許多不同的領域和技術。 機器視覺嵌入式
    的頭像 發表于 07-16 10:30 ?586次閱讀

    入門嵌入式系統這些知識你知道嗎?

    嵌入式系統是一種專用的計算機系統,作為裝置或設備的一部分。通常,嵌入式系統是一個控制程序存儲R
    發表于 05-03 09:54 ?630次閱讀

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術集成到嵌入式系統的一種解決方案。嵌入式系統是一種為特定應用而設
    的頭像 發表于 03-15 14:29 ?1342次閱讀

    嵌入式系統發展前景?

    、舒適的生活體驗。 工業自動化和智能制造是嵌入式系統的重要應用領域。未來,隨著工業4.0的推進,嵌入式系統將更為廣泛地應用于生產設備、機器人、自動化流水線等,從而提高生產效率和質量。
    發表于 02-22 14:09
    主站蜘蛛池模板: 久久久久久久国产精品视频 | 年轻的女职工在线观看 | 秋霞特色大片18岁入口 | 99青草青草久热精品视频 | 精品视频免费在线观看 | 狼与美女谐音歌词 | 木凡的天空在线收听 | 亚洲精品午睡沙发系列 | 老湿司午夜爽爽影院榴莲视频 | 99国产在线视频有精品视频 | 国产东北男同志videos网站 | 正在播放国产尾随丝袜美女 | 处 女 开 破小说 | 日久精品不卡一区二区 | 5g在视影讯天天5g免费观看 | 四虎永久在线精品国产免费 | 国产成人精品自拍 | 九九免费的视频 | 白丝美女被狂躁免费漫画 | 产传媒61国产免费 | 国产99久久久国产精品免费看 | 亚洲国产在线精品第二剧情不卡 | free俄罗斯性xxxxhd派对 | 國產日韓亞洲精品AV | 夜夜国产亚洲视频香蕉 | 国产亚洲日韩欧美视频 | 日本午夜精品理论片A级APP发布 | 99久久精品国产交换 | 99香蕉视频 | 在线免费看a | 杨幂视频在线观看1分30秒 | 亚洲中文字幕永久在线 | 欧美精品AV一区二区无码 | 甜性涩爱快播 | 国产午夜精品美女免费大片 | 欧美亚洲日韩自拍高清中文 | 色mimi| www黄色com| 美女搜查官被高难度黑人在线播放 | 99re28久久热在线观看 | 国产成人精选免费视频 |