李暉 田地
?
基于SQLITE學生信息管理系統的QT實現
李暉 田地
濟源職業技術學院,河南 濟源 459000
對QT開發環境和平臺做了介紹,介紹了系統模塊的分析。系統實現了數據輸入、修改、查詢排序等功能,經測試,系統運行良好,簡單實用。
信息管理;QT;SQLITE
隨著信息技術在管理上的廣泛應用,學生管理系統能夠提高廣大員工工效率和信息化水平,實現學生信息管理工作流程的系統化、規范化和自動化,為教學辦公帶來了極大方便。同時,采用移動平臺對進行學生信息管理是必將稱為今后發展的方向[1]。
(1)管理員能夠實現對整個學生信息的添加、修改、刪除、查詢等操作,對成績的添加、查詢、保存、打印等操作。(2)可以將學生信息的數據庫發布到網上,方便學生教師進行查詢,達到方便快捷的效果。(3)教師能夠對所有學生的信息和成績進行查詢,錄入學生信息,統計學生信息以及修改。(4)學生可以在自己的權限內對自己個人信息進行查詢,方便簡單地修改刪除數據,修改登錄密碼。
該學生信息管理與分析系統是以QT界面+SQLite數據查詢語言編寫,其系統功能在QT界面上運行。用戶只需進行輸入簡單字符或用鼠標點擊即可實現操作。
學生信息管理與分析系統主要提供信息查詢,方便管理的網上的信息查閱平臺,學生可以通過該系統查閱與自己相關信息。教師可以通過信息管理與分析系統查閱學生信息,還有對學生的添加、刪除、修改、排序等功能[2]。
學生信息管理系統是一個完整的院校學生信息管理系統,在本系統中主要包括用戶登錄、添加、修改、插入操作、查詢、排序操作、刪除操作、返回全表、保存、打印等,具體描述功能如下:
①配置數據庫:靈活配置數據庫,以保證系統在主機上的使用。
②用戶登錄:驗證用戶信息是否正確,不正確將不能進入該系統。
③退出系統:關閉系統。
④學生信息管理功能:學生信息管理功能主要包括查詢個人信息、導入導出、排序、修改、返回全表、添加和刪除。
⑤學生信息管理功能:學生信息管理功能主要包括:查詢成績,保存成績、打印成績。
學生信息管理系統要求具有保密性,設置了密碼設置和權限設置。權限設置只有管理員可以進行操作。
用戶都需要通過用戶名和密碼進行登錄。使用語句f(ui->lineEdit->text()==("**")&&ui實現系統登陸用戶名和密碼的設置。密碼和用戶名輸入正確后,進入系統主界面。
(1)進入“提交修改”按鈕的單擊事件槽函數,使用database().transaction()和submitAll()實現學生信息管理系統的查詢操作。這里用到事務操作,真正起提交操作的是submitAll(),它提交所有更改。
(2)進入“撤銷修改”按鈕槽函數,在widget.cpp文件中添加頭文件:#include "QMessageBox"
和#include "QSqlError"。
(3)進入“查詢”按鈕單擊事件槽函數,用model->setFilter(QObject:tr(“name =‘%1′”).arg(name))實現學生信息管理系統的查詢操作;用model->settable("student")實現學生信息管理系統的返回全表操作。
(4)進入“按升序排列”按鈕的單擊事件,通過setSort(0,Qt:AscendingOrder)實現學生信息管理系統升序排列操作;setSort(0,Qt:DescendingOrder)實現學生信息管理系統降序排列操作。
(5)進入“按模糊查找”按鈕的單擊事件,通過setFilter(QObject:tr("xb='男' ").arg(xb))實現模糊查詢操作。
(6)進入“打印”按鈕的單擊事件,用QPrintDialog printDialog實現學生信息管理系統成績表打印操作,需在cjb.cpp文件中添加頭文件#include "QPrinter"和#include "QPrintDialog"。
(7)進入“保存”按鈕的單擊事件,用QFileDialog textsave(this,"save")和QStringList qt實現成績表保存操作,需要在cjb.cpp文件中添加頭文件#include "QTextDocument、#include "QFileDialog"、#include "QTextStream"和#include "QFile"[3]。
(8)進入“撤銷”按鈕的單擊事件,通過setTable("Achievement")實現成績表撤銷操作。
SQLite是一款輕型可嵌入的SQL數據庫引擎,目前已經在很多嵌入式產品中使用。本系統設計重點運用了SQLiteDatabase中的execSQL()和rawQuery()方法。execSQL()方法可以執行insert、delete、update和CREATE TABLE等有更改行為SQL語句[4]。通過語句QSqlDatabase db =QSqlDatabase:addDatabase("QSQLITE")來進行數據庫與系統的連接。
本系統采用模塊化設計,采用少量菜單而多用按鈕的風格。其中主要功能大多集中在所使用的窗口界面上,通過按鈕直接對窗口操作,便于在移動平臺上使用。系統實現了學生信息系統的基本功能,能夠為類似系統提供參考。
[1]錢麗英,邢華剛.對學生成績管理系統的探討[J].科技資訊,2010(2)3.
[2]王艷兵,錢宗斌.學生信息管理系統的開發與設計[J].計算機光盤軟件與應用,2011(1).
[3]成杰.linux窗口程序設計——Qt精彩實例分析[M].北京:清華大學出版社,2008.
[4]吳迪.零基礎學Qt4編程[M].北京:北京航空航天大學出版社,2010.
TP316.81;TP315
A
1009-6434(2016)04-0008-01