《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > SQLite在嵌入式系統Wince中的應用
SQLite在嵌入式系統Wince中的應用
來源:微型機與應用2011年第14期
蔣 晶,郝繼飛,于 平
(中國礦業大學 信息與電氣工程學院,江蘇 徐州221008)
摘要: 首先介紹了SQLite嵌入式數據庫的結構和特點與選擇必要性及應用到嵌入式系統Wince中的優點;其次介紹以ARM9與Wince6.0為平臺,在Visual Studio 2008中開發的嵌入式數據庫。通過研究DataGrid在Windows mobile中自動設置列寬的方法,本設計通過軟件編程解決了基于Wince6.0的ARM9嵌入式設備中存在的問題,并分析通過DataGrid屬性中TableStyles未改變列寬的原因。
Abstract:
Key words :

摘  要: 首先介紹了SQLite嵌入式數據庫的結構和特點與選擇必要性及應用到嵌入式系統Wince中的優點;其次介紹以ARM9與Wince6.0為平臺,在Visual Studio 2008中開發的嵌入式數據庫。通過研究DataGrid在Windows mobile中自動設置列寬的方法,本設計通過軟件編程解決了基于Wince6.0的ARM9嵌入式設備中存在的問題,并分析通過DataGrid屬性中TableStyles未改變列寬的原因。
關鍵詞: SQLite;Wince;Visual Studio 2008

    隨著科學技術的發展,嵌入式系統成為了科技發展的主要領域, 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中運行的結果。如圖3所示。

4.3 Wince通過DataGrid屬性建數據庫的分析
    DataGrid在應用于基于Wince的Windows mobile[7]智能設備時,主要針對DataGridTableStyle屬性進行設置[8]。根據應用于Windows mobile的原理對基于Wince的ARM9的嵌入式設備中建數據庫還是行不通。對其列的屬性進行操作設置仍然改變不了列的寬度,所以這種路徑行不通。試了很多種方法,最后通過軟件編程進行設置,得到了圖3的結果。比較DataGridTableStyl進行設置與軟件設置發現,問題在于表的MappingName與列的MappingName設置時,必須對應才能實現修改功能。用DataGridTableStyle設置,如果列的MappingName與數據庫中的建表的列不對應,則映射不存在,從而找不到網格去顯示數據,更無法對數據的列寬進行操作。所以通過軟件編程,可以對建在緩存區域中的每一張表中所有的列進行操作,解決文本過長不能完全顯示的問題。
    通過上面的介紹可以看出,SQLite作為開源的嵌入式數據庫應用在Wince中的一個優點就是建表比較簡單,不像SQL CE數據庫[9],在Wince運行中需要先創建表,把所建的數據庫放在Wince的系統中,添加數據源時再去綁定這個數據源。對于在.net2.0平臺建立的數據庫[10],添加數據源時無法找到路徑,所以這種方法不可行。通過SQLite軟件創建數據庫的方法則可以改善上述不足。SQLite作為一款小巧的嵌入式數據庫,發展前景很大,在基于ARM的Wince操作系統有著廣泛應用[11]。
參考文獻
[1] OWENS M.The definitive guide to SQLite[M].US:APress,2006.
[2] 周毓林,寧陽,陸貴強,等.Windows CE.net內核定制及應用開發[M].北京:電子工業出版社,2005.
[3] 萬瑪寧,關永,韓相軍.嵌入式數據庫典型技術SQLite和Berkeley DB的研究[J].微計算機信息,2006,22(2):91-92.
[4] HENDERSON K.Transact-SQL權威指南[M].健蓮科技譯,北京:中國電力出版社,2002.
[5] An introduction to the SQLite C/C++interface[CP].http:// www.sqlite.org/cintro.html.
[6] 胡偉.SQLite在嵌入式系統上的實現研究[J].計算機與數字工程,2009,37(2):46-47.
[7] MierosoftWindowsMobile.http://www.mierosoft.eoInjwindowsmobile/default.msPx.
[8] 劉彥博,胡硯,馬駭.WindowsMobile平臺應用與開發[M]. 北京:人民郵電出版社,2006.
[9] NEWMAN C.SQLite[M],USA:Sams,2004.
[10] ROB P.數據庫設計與開發教程[M].于書舉,許向眾,韓德強,等譯,北京:電子工業出版社,2002.
[11] 鄧成中,黃惟公,萬松峰.基于嵌入式ARM&WinCE的小型監控系統的設計[J].微計算機信息,2005,21(23):47-49.
 

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美一区三区二区在线观看| 欧美91精品| 欧美一区二区黄色| 日韩写真在线| 国产农村妇女精品一区二区| 好看的亚洲午夜视频在线| 国内综合精品午夜久久资源| 欧美巨乳波霸| 欧美激情一级片一区二区| 亚洲午夜视频在线| 国产一区99| 亚洲欧美在线一区| 国产精品美女久久久| 亚洲一级影院| 女人色偷偷aa久久天堂| 欧美一区二区三区精品电影| 看欧美日韩国产| 欧美黄色视屏| 国产欧美日韩精品丝袜高跟鞋| 国产精品亚洲产品| 欧美日韩和欧美的一区二区| 国产精品成人观看视频免费| 亚洲久久在线| 欧美一区午夜视频在线观看| 久久久久国色av免费看影院| 伊人狠狠色j香婷婷综合| 亚洲人成小说网站色在线| 精品99一区二区| 国产美女精品免费电影| 麻豆精品精品国产自在97香蕉| 亚洲精品日韩在线| 亚洲一区免费视频| 国产在线播放一区二区三区| 亚洲欧美韩国| 国产精品一区二区三区久久久| 午夜精品久久久99热福利| 国产一区二区三区丝袜| 午夜精品久久久久久99热软件| 国产精品香蕉在线观看| 久久综合伊人77777麻豆| 午夜精品久久久久久久久久久久| 激情文学综合丁香| 亚洲女同性videos| 欧美激情视频给我| 午夜久久久久| 亚洲精品美女91| 一区二区三区精品视频在线观看| 欧美电影电视剧在线观看| 在线亚洲免费视频| 国产拍揄自揄精品视频麻豆| 亚洲电影第三页| 麻豆91精品91久久久的内涵| 黄色日韩网站视频| 欧美一级视频免费在线观看| 亚洲国产va精品久久久不卡综合| 久久成人精品视频| 国产精品国产三级国产普通话99| 好看的日韩视频| 一区二区三区免费观看| 欧美中文字幕在线视频| 欧美激情综合色| 国产自产精品| 中文av一区特黄| 91久久久国产精品| 欧美日韩一区二区三区高清| 国产精品久久久久aaaa樱花| 国产欧美日韩亚州综合| 亚洲欧美久久久久一区二区三区| 国产一区在线免费观看| 狠狠做深爱婷婷久久综合一区| 午夜视频在线观看一区| 亚洲免费视频观看| 亚洲欧美日韩精品| 中国av一区| 亚洲你懂的在线视频| 在线观看成人av电影| 欧美亚洲第一区| 看片网站欧美日韩| 欧美日韩一卡二卡| 亚洲人成毛片在线播放| 欧美日韩国产成人在线91| 久热精品视频在线观看一区| 宅男噜噜噜66一区二区66| 国产精品麻豆成人av电影艾秋| 欧美日韩网址| 亚洲免费观看在线观看| 国产精品日韩电影| 亚洲综合国产激情另类一区| 久久国产精品毛片| 黄色资源网久久资源365| 欧美日韩一区不卡| 亚洲第一区中文99精品| 欧美肥婆在线| 国产精一区二区三区| 一区二区三区四区国产| 亚洲美女黄色| 亚洲一二三级电影| 久久精品国产久精国产一老狼| 欧美性大战久久久久久久蜜臀| 在线观看国产欧美| 免费日韩精品中文字幕视频在线| 欧美大片一区| 亚洲视频一区二区| 久久亚洲综合色| 一区二区三区国产| 国产亚洲永久域名| 久久久久久一区二区| 亚洲国产精品成人久久综合一区| 欧美日韩国产在线播放| 亚洲伊人伊色伊影伊综合网| 一本色道久久综合狠狠躁篇的优点| 国产亚洲观看| 久久九九精品99国产精品| 欧美一区二区视频在线观看| 欧美三级在线视频| 国产精品激情av在线播放| 国产欧美婷婷中文| 久久国产综合精品| 永久域名在线精品| 国产精品扒开腿爽爽爽视频| 毛片一区二区三区| 亚洲人午夜精品免费| 亚洲影院一区| 欧美日韩www| 国产精品分类| 久久久久久高潮国产精品视| 一区在线观看| 久久国产一区二区| 中文高清一区| 欧美日韩成人在线视频| 亚洲国产成人在线视频| 欧美韩日精品| 免费精品99久久国产综合精品| 狠狠色狠狠色综合日日小说| 日韩午夜电影av| 夜夜嗨网站十八久久| 欧美午夜激情视频| 久久er99精品| 嫩草伊人久久精品少妇av杨幂| 激情懂色av一区av二区av| 99国产一区| 在线日韩一区二区| 海角社区69精品视频| 亚洲精品麻豆| 国产亚洲va综合人人澡精品| 亚洲欧美在线观看| 欧美三级日韩三级国产三级| 亚洲影院在线| 亚洲国产精品久久久久秋霞不卡| 好吊色欧美一区二区三区视频| 午夜欧美精品久久久久久久| 99在线|亚洲一区二区| 国产精品免费看久久久香蕉| 西西人体一区二区| 曰本成人黄色| 国产视频久久久久| 激情欧美一区二区三区| 欧美粗暴jizz性欧美20| 嫩模写真一区二区三区三州| 亚洲激情专区| 亚洲网友自拍| 亚洲国产精品一区二区尤物区| 91久久久在线| 日韩视频免费在线| 欧美精品成人| 国产精品xxxxx| 欧美成人网在线| 欧美亚洲成人精品| 国产综合av| 亚洲风情亚aⅴ在线发布| 麻豆成人综合网| 亚洲欧美日韩在线观看a三区| 免费美女久久99| 欧美亚洲一区二区在线| 日韩午夜在线播放| 久久最新视频| 亚洲国内欧美| 亚洲综合欧美| 亚洲全黄一级网站| 亚洲国产欧美在线人成| 亚洲精品一二区| 久久成人精品电影| 国产婷婷色一区二区三区在线| 国产欧美日本一区二区三区| 国产在线不卡精品| 99精品国产福利在线观看免费| 欧美日产国产成人免费图片| 欧美精品播放| 国产亚洲亚洲| 国产毛片精品国产一区二区三区| 在线观看一区二区精品视频| 亚洲一二三区视频在线观看| 欧美综合77777色婷婷| 亚洲一区国产精品| 欧美高清影院| 欧美一区二区私人影院日本| 久久精品国产免费观看| 国产麻豆精品视频| 久久另类ts人妖一区二区| 尤物精品在线| 国产免费成人av| 午夜欧美精品久久久久久久| 亚洲精品综合在线| 99re8这里有精品热视频免费| 亚洲影院在线| 亚洲国产成人tv| 久久综合五月天婷婷伊人| 激情成人av在线| 在线免费不卡视频| 亚洲精品视频一区| 国产在线国偷精品产拍免费yy| 国产日韩高清一区二区三区在线| 一区二区三区免费在线观看| 久久精品国产99精品国产亚洲性色| 在线观看欧美| 韩国av一区二区三区四区| 欧美激情亚洲另类| 亚洲成人在线视频播放| 免费高清在线视频一区·| 亚洲黄色成人网| 久久九九精品99国产精品| 国产一区导航| 国产精品免费久久久久久| 黑人极品videos精品欧美裸| 一区二区成人精品| 性欧美xxxx视频在线观看| 91久久在线视频| 欧美高清视频免费观看| 亚洲国产精品va在线观看黑人| 看片网站欧美日韩| 国产综合在线视频| 久久综合影音| 久久精品视频网| 国产一区视频在线观看免费| 伊人久久亚洲热| 久久久999精品免费| 国产乱码精品一区二区三区五月婷| 正在播放欧美视频| 一区二区不卡在线视频 午夜欧美不卡'| 亚洲精品一级| 久久精品亚洲精品国产欧美kt∨| 欧美日韩在线亚洲一区蜜芽| 久久xxxx精品视频| 亚洲欧洲一二三| 亚洲欧美日本精品| 国产精品女人毛片| 亚洲综合99| 欧美一区二区三区四区高清| 亚洲最新在线| 久久精品一区二区| 欧美日韩黄色一区二区| 亚洲黄色有码视频| 欧美日韩一区二区三区| 亚洲深夜福利视频| 国产精品高潮呻吟久久av黑人| 久久久久久婷| 国产自产v一区二区三区c| 国产精品午夜国产小视频| 亚洲另类一区二区| 91久久精品国产91久久| 欧美午夜一区二区三区免费大片| 欧美freesex交免费视频| 免费在线观看精品| 夜夜精品视频一区二区| 久久久久久久综合色一本| 亚洲欧美日韩系列| 美女亚洲精品| 美女主播视频一区| 亚洲美女色禁图| 欧美午夜精品一区二区三区| 老司机午夜免费精品视频| 午夜精品免费在线| 欧美一区二区三区四区夜夜大片| 久久久噜噜噜久久久| 国产欧美精品一区二区三区介绍| 亚洲欧美日韩另类| 国产亚洲午夜| 麻豆国产精品777777在线| 亚洲国产精品久久久久秋霞影院| 免费欧美日韩| 国产精品区一区二区三区| 亚洲欧美日韩在线观看a三区| 在线性视频日韩欧美| 亚洲成人原创| 久久精品青青大伊人av| 宅男噜噜噜66一区二区| 黄色日韩网站视频| 欧美一二三视频| 国产亚洲va综合人人澡精品| 日韩视频永久免费| 欧美 日韩 国产在线| 好吊妞这里只有精品| 亚洲一区二区三区四区在线观看| 欧美一区二区日韩一区二区| 久久精品国产综合| 欧美日韩亚洲精品内裤| 9l国产精品久久久久麻豆| 久久成人综合视频| 蜜臀va亚洲va欧美va天堂| 久久精品国产精品亚洲| 久久se精品一区精品二区| 欧美激情91| 亚洲区免费影片| 国产精品欧美激情| 亚洲人成网站在线观看播放| 久久久国产视频91| 欧美黄色日本| 亚洲一区二区三区色| av成人免费观看| 久久久欧美精品sm网站| 国产视频一区三区| 欧美激情在线免费观看| 米奇777超碰欧美日韩亚洲| 午夜久久久久久| 在线激情影院一区| 国产精品你懂的在线欣赏| 国产婷婷97碰碰久久人人蜜臀| 久久gogo国模裸体人体| 久久久久久久国产| 国产尤物精品| 亚洲日本va午夜在线影院| 亚洲欧美色一区| 久久人人爽爽爽人久久久| 午夜一区二区三视频在线观看| 欧美一区二区在线观看| 一区二区三区在线不卡| 欧美国产国产综合| 欧美另类69精品久久久久9999|