亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于嵌入式Qt下的MySQL數(shù)據(jù)庫(kù)設(shè)計(jì)與開發(fā)

        2020-06-29 07:16:23韓改寧李永鋒高伊騰
        微型電腦應(yīng)用 2020年5期
        關(guān)鍵詞:MySQL數(shù)據(jù)庫(kù)嵌入式

        韓改寧 李永鋒 高伊騰

        摘 要:由于嵌入式設(shè)備中可使用的資源相對(duì)較少,針對(duì)嵌入式系統(tǒng)下的數(shù)據(jù)庫(kù)設(shè)計(jì)問題,利用Qt和MySQL實(shí)現(xiàn)數(shù)據(jù)庫(kù)開發(fā),從而解決數(shù)據(jù)庫(kù)大,占用資源多的問題。Qt提供的QtSql模塊實(shí)現(xiàn)Qt數(shù)據(jù)庫(kù)應(yīng)用程序的關(guān)聯(lián),采用MySQL輕型數(shù)據(jù)庫(kù),支持Windows和Linux等操作系統(tǒng),同時(shí)提供ODBC 接口。利用Qt開發(fā)平臺(tái),通過Qt中QSql模塊及相關(guān)數(shù)據(jù)庫(kù)驅(qū)動(dòng),創(chuàng)建面向應(yīng)用的數(shù)據(jù)庫(kù)系統(tǒng)開發(fā),并通過SQL語句進(jìn)行數(shù)據(jù)庫(kù)交互操作,然后通過交叉編譯器,將其移植到ARM Cortex-A8開發(fā)板上,從而實(shí)現(xiàn)嵌入式下的數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)與開發(fā)。

        關(guān)鍵詞:嵌入式;Qt;QtSQL模塊;MySQL數(shù)據(jù)庫(kù);ARM Cortex-A8

        Abstract:Because resources which can be used are relatively few in the embedded devices. For embedded system, a database is designed in this paper, by using Qt and MYSQL, to solve problems of large volume of database and occupying more resources. QtSql module provides a seamless connection to database and Qt applications, MYSQL is used for lightweight database, to support Windows and Linux operating systems and provide ODBC interface. In the paper, Qt development platform is used to create an application database system development through QtSql modules and related database driver, and interact with the database through SQL statements. Then, it is compiled through cross-compiler, and transplanted to ARM Cortex-A8 development board in order to realize the development and design of the database system in embedded environment.

        Key words:embedded;Qt;QtSQL model;MYSQL database;ARM Cortex-A8

        0 引言

        數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)數(shù)據(jù)處理與信息管理系統(tǒng)的核心,研究和管理的對(duì)象是數(shù)據(jù),所以數(shù)據(jù)庫(kù)技術(shù)是對(duì)數(shù)據(jù)的統(tǒng)一組織和管理。一般在嵌入式開發(fā)中,嵌入式數(shù)據(jù)庫(kù)應(yīng)用到嵌入式設(shè)備中,要求占用內(nèi)存小、運(yùn)行速度快、執(zhí)行效率高等,這樣才可以降低開設(shè)備成本,提高設(shè)備效能。

        由于Qt是一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序設(shè)計(jì)框架,在建立好的Qt環(huán)境下,在建立基于ARM開發(fā)板的交叉編譯環(huán)境,開發(fā)出可以移植到ARM開發(fā)板上的應(yīng)用程序。

        1 Qt中的SQL數(shù)據(jù)庫(kù)

        Qt中提供了不同的數(shù)據(jù)庫(kù)接口,為不同層次的用戶提供了豐富的數(shù)據(jù)庫(kù)操作類。QtSql模塊由驅(qū)動(dòng)層、SQL接口層和用戶接口層3部分組成,各層次功能如表1所示。

        2 Qt中創(chuàng)建數(shù)據(jù)庫(kù)

        2.1 創(chuàng)建連接

        通過驅(qū)動(dòng)層或者SQL接口層提供的類來訪問數(shù)據(jù)庫(kù),首先創(chuàng)建并打開數(shù)據(jù)庫(kù)連接。在應(yīng)用程序中,可以向相同的數(shù)據(jù)庫(kù)創(chuàng)建多個(gè)連接。

        2.2 使用SQL語句操作

        Qt中支持SQL語句。有兩種方式創(chuàng)建數(shù)據(jù)庫(kù)表,一種是利用mySql Comman LineClient端,執(zhí)行SQL語句建立;一種是使用SQL模型類,利用Qt提供MVC模式,比如QSqlQueryModel和QSqlTableModel類等進(jìn)行數(shù)據(jù)庫(kù)操作,而且可以將結(jié)果在表格中顯示出來。

        2.2.1 使用SQL語句操作數(shù)據(jù)庫(kù)

        數(shù)據(jù)庫(kù)連接成功后,首先要?jiǎng)?chuàng)建student數(shù)據(jù)庫(kù)表, 包括學(xué)生的學(xué)號(hào)、姓名、性別、年齡、學(xué)院、平均成績(jī)。

        (1) 利用QSqlQuery類提供SQL語句操作:

        然后向表中插入記錄,利用SQL語句操作:

        query.exec("insert into student values (1001, ‘王浩,‘男,20,‘計(jì)算機(jī)學(xué)院,90)");

        query.exec("insert into student values (1002,‘張紅,‘女,20,‘計(jì)算機(jī)學(xué)院,92)");

        (2) 利用MySql命令行方式實(shí)現(xiàn)數(shù)據(jù)庫(kù)表的創(chuàng)建,如圖2所示。

        (a) 查詢創(chuàng)建的數(shù)據(jù)庫(kù)

        (b) 查詢?cè)摂?shù)據(jù)庫(kù)下包含的數(shù)據(jù)庫(kù)表

        (c) 顯示數(shù)據(jù)庫(kù)表結(jié)構(gòu)

        (d) 顯示數(shù)據(jù)庫(kù)表數(shù)據(jù)

        最后,對(duì)數(shù)據(jù)庫(kù)表進(jìn)行遍歷操作,利用SQL語句,如插入記錄、顯示表記錄、查詢、定位等。

        第一種方法不需要單獨(dú)配置其他數(shù)據(jù)庫(kù),直接在Qt開發(fā)平臺(tái)上,對(duì)數(shù)據(jù)庫(kù)表進(jìn)行創(chuàng)建和操作。該方法適合于Qt 下的所以數(shù)據(jù)庫(kù)操作。

        第二種方法是在Qt平臺(tái)之外,安裝MySql數(shù)據(jù)庫(kù),然后通過CMD命令的方式創(chuàng)建數(shù)據(jù)表結(jié)構(gòu)及添加表數(shù)據(jù)庫(kù)。該方法對(duì)數(shù)據(jù)庫(kù)表操作直觀,但是需要安裝程序。

        2.2.2 Qt實(shí)現(xiàn)數(shù)據(jù)庫(kù)表的顯示

        Qt中提供了更簡(jiǎn)單的數(shù)據(jù)庫(kù)操作和數(shù)據(jù)顯示模型,基于MVC(Model-View-Control)架構(gòu),Qt下提供多種Model模型和View視圖方式,在此,通過兩個(gè)Model模型進(jìn)行數(shù)據(jù)表管理。

        (1) QSqlQueryModel類對(duì)數(shù)據(jù)表顯示

        創(chuàng)建QSqlQueryModel的實(shí)例modelQuery,再利用SQL語句查詢student表的內(nèi)容,再建立了一個(gè)視圖view,通過視圖的setModel方法添加模型。

        3 學(xué)生信息管理數(shù)據(jù)庫(kù)設(shè)計(jì)

        按照上述數(shù)據(jù)庫(kù)連接與SQL語句操作方法,利用Qt中QSqlTableModel類模型對(duì)數(shù)據(jù)庫(kù)進(jìn)行增加、刪除、修改及查詢等操作。登錄界面如圖3所示,數(shù)據(jù)庫(kù)主界面如圖4所示,數(shù)據(jù)庫(kù)表操作如圖5-圖7所示。

        4 數(shù)據(jù)庫(kù)系統(tǒng)移植

        首先,在ARM Cortex-A8開發(fā)板上配置環(huán)境,移植操作?系統(tǒng),然后通過交叉編譯器arm_linux_gcc進(jìn)行編譯,最后,將交叉編譯后生成的可執(zhí)行文件移植到開發(fā)板上并運(yùn)行。學(xué)生信息管理平臺(tái)效果如圖8所示。

        5 總結(jié)

        針對(duì)嵌入式系統(tǒng)下的數(shù)據(jù)庫(kù)設(shè)計(jì)問題,本設(shè)計(jì)利用Qt和MySQL實(shí)現(xiàn)數(shù)據(jù)庫(kù)開發(fā),從而解決數(shù)據(jù)庫(kù)大,占用資源多的問題。通過Qt提供的QtSql模塊實(shí)現(xiàn)數(shù)據(jù)庫(kù)關(guān)聯(lián),利用SQL語句實(shí)現(xiàn)數(shù)據(jù)庫(kù)表的創(chuàng)建和添加記錄,通過QSqlQueryModel類和QSqlTableModel類兩種模型進(jìn)行數(shù)據(jù)管理,采用QTableView類視圖實(shí)現(xiàn)數(shù)據(jù)庫(kù)表的顯示,最后,通過交叉編譯,并移植到ARM Cortex-A8開發(fā)板上。該設(shè)計(jì)方案簡(jiǎn)單易操作,占用資源較少,適合嵌入式系統(tǒng)下的小型數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)。

        參考文獻(xiàn)

        [1] 張治國(guó),董西廣.基于Qt平臺(tái)的數(shù)據(jù)庫(kù)編程[J].福建電腦,2011 (3):165-167.

        [2] 孔翔鳴. Qt本地?cái)?shù)據(jù)庫(kù)開發(fā)[J]. 電腦知識(shí)與技術(shù), 2017, 13(10):4-5.

        [3] 梁隆愷, 韓改寧, 王曉妮. 嵌入式Qt下的數(shù)據(jù)庫(kù)程序設(shè)計(jì)與開發(fā)[J]. 辦公自動(dòng)化, 2014(21):58-61.

        [4] 蔡志明,陸川富.精通Qt4編程[M]. 第2版.北京:電子工業(yè)出版社,2011.

        [5] 閔孝忠, 朱林立. QT環(huán)境下通用數(shù)據(jù)庫(kù)組件技術(shù)的研究與設(shè)計(jì)[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2015, 32(12):231-234.

        [6] 毛成果.采煤機(jī)搖臂便攜式數(shù)據(jù)采集及分析系統(tǒng)研究[D]. 徐州:中國(guó)礦業(yè)大學(xué), 2014.

        [7] 郭琳. 一種多功能教學(xué)輔助系統(tǒng)的軟件設(shè)計(jì)[D]. 哈爾濱:黑龍江大學(xué), 2018.

        [8] 瞿帥,張曉麗,朱程浩,等.機(jī)載激光雷達(dá)森林資源調(diào)查系統(tǒng)的設(shè)計(jì)與試驗(yàn)[J].西北林學(xué)院學(xué)報(bào), 2018, 33(4):175-182.

        [9] 林曉斌, 林晨. 基于ARM9與QT的多功能智能車載系統(tǒng)研發(fā)[J].赤峰學(xué)院學(xué)報(bào)(自然科學(xué)版), 2018(3). 92-94.

        (收稿日期:2019.09.05)

        猜你喜歡
        MySQL數(shù)據(jù)庫(kù)嵌入式
        搭建基于Qt的嵌入式開發(fā)平臺(tái)
        充電樁狀態(tài)實(shí)時(shí)監(jiān)控系統(tǒng)與C/S框架設(shè)計(jì)
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        基于B/S結(jié)構(gòu)的高校畢業(yè)設(shè)計(jì)選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
        改進(jìn)的SSH框架技術(shù)在醫(yī)藥管理系統(tǒng)中的研究及應(yīng)用
        基于PHP技術(shù)網(wǎng)上紀(jì)念園的設(shè)計(jì)與實(shí)現(xiàn)
        Altera加入嵌入式視覺聯(lián)盟
        倍福 CX8091嵌入式控制器
        日本三区在线观看视频| 在线不卡av天堂| 中文人妻av大区中文不卡| 亚洲一区二区三区熟妇| 亚洲精品中文幕一区二区| 女同性黄网aaaaa片| AV无码免费不卡在线观看| 亚洲熟女天堂av一区二区三区| 午夜精品久久久久久久| 免费无码午夜福利片69| 国产va在线播放| 日韩av一区二区蜜桃| 99热在线观看| 亚洲肥老太bbw中国熟女| 国产颜射视频在线播放| 久久综合九色综合97婷婷| 东北女人毛多水多牲交视频| 国产欧美va欧美va香蕉在线观| 一本色道久久综合亚州精品| 国产高清成人在线观看视频| 天堂…在线最新版资源| 91精品国产91久久久久久青草| 日本一区二区视频免费在线观看| 免费乱理伦片在线观看| 国产乱子伦精品免费无码专区| 国产无遮挡又黄又爽无VIP| 狠狠爱婷婷网五月天久久| 免费网站看v片在线18禁无码| 96免费精品视频在线观看| 偷拍与自偷拍亚洲精品| 中文字幕日韩精品美一区二区三区| 日本一区二区三区精品免费| 亚洲国产精品久久电影欧美 | 国产麻豆剧果冻传媒一区| 娇妻玩4p被三个男人伺候电影| 国产亚洲精品综合99久久| 亚洲中文字幕在线综合| 亚洲一区二区三区中文字幂| 亚洲综合色婷婷久久| 一本色道久久亚洲av红楼| 一本一本久久aa综合精品|