網(wǎng)站建設(shè)工資高嗎成都企業(yè)網(wǎng)站seo技術(shù)
一、SQLite簡要介紹
什么是SQLite
SQLite是一個(gè)進(jìn)程內(nèi)的庫,實(shí)現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的 SQL 數(shù)據(jù)庫引擎。它是一個(gè)零配置的數(shù)據(jù)庫,這意味著與其他數(shù)據(jù)庫不一樣,您不需要在系統(tǒng)中配置。
就像其他數(shù)據(jù)庫,SQLite 引擎不是一個(gè)獨(dú)立的進(jìn)程,可以按應(yīng)用程序需求進(jìn)行靜態(tài)或動(dòng)態(tài)連接。SQLite 直接訪問其存儲(chǔ)文件
為什么要用SQLite
SQLite作為輕量級(jí)開源數(shù)據(jù)庫軟件,目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如Tcl、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快!
- 不需要一個(gè)單獨(dú)的服務(wù)器進(jìn)程或操作的系統(tǒng)(無服務(wù)器的)。
- SQLite 不需要配置,這意味著不需要安裝或管理。
- 一個(gè)完整的 SQLite 數(shù)據(jù)庫是存儲(chǔ)在一個(gè)單一的跨平臺(tái)的磁盤文件。
- SQLite 是非常小的,是輕量級(jí)的,完全配置時(shí)小于 400KiB,省略可選功能配置時(shí)小于250KiB。
- SQLite 是自給自足的,這意味著不需要任何外部的依賴。
- SQLite 事務(wù)是完全兼容 ACID 的,允許從多個(gè)進(jìn)程或線程安全訪問。
- SQLite 支持 SQL92(SQL2)標(biāo)準(zhǔn)的大多數(shù)查詢語言的功能。
- SQLite 使用 ANSI-C 編寫的,并提供了簡單和易于使用的 API。
- SQLite 可在 UNIX(Linux, Mac OS-X, Android, iOS)和 Windows(Win32, WinCE,WinRT)中運(yùn)行。
SQLite下載
1.SQLite官方下載鏈接:SQLite Home Page
所需要的四個(gè)文件如下如圖所示:
二、在Qt5中使用步驟
第一步:導(dǎo)入sqlite3相關(guān)文件
2. 新建兩個(gè)文件夾:
db:用于存放數(shù)據(jù)庫文件(.db)
lib:用于存放lib文件(好處:易于區(qū)分后面繼續(xù)添加其他的lib文件)
第二步:打開qt 修改 .pro文件,添加SQL模塊
其實(shí)在我們上上述引用lib的時(shí)候就已經(jīng)把庫添加進(jìn)來了。
第三步:簡單測試一下 打開、關(guān)閉數(shù)據(jù)庫
Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);initDb();
}Widget::~Widget()
{delete ui;
}Widget::initDb()
{sqlite3 *sqldb=nullptr;//打開數(shù)據(jù)庫int res = sqlite3_open("db/video.db", &sqldb);if(res == 0)//打開成功{qDebug()<<"open dataBase success!"<<endl;}else{qDebug()<<sqlite3_errcode(sqldb)<<endl;qDebug()<<sqlite3_errmsg(sqldb)<<endl;}//關(guān)閉數(shù)據(jù)庫res = sqlite3_close(sqldb);if(res!=0){qDebug()<<sqlite3_errcode(sqldb)<<endl;qDebug()<<sqlite3_errmsg(sqldb)<<endl;}
}