Qt之Sqlite數據庫
概述:
1. Sqlite是一款輕量級的關系型數據庫,運行速度非常快,通常是需要幾百KB的內存就夠
2. 數據庫可視化軟件官方下載鏈接
https://sqlitebrowser.org/dl/
3. 本人下載使用版本為(圖片)
4. 運行DB Browser for SQLite.exe我們可以新建數據庫、建表、對表進行相應操作
5. 針對數據庫類型這里進行一個說明:
integet: 整型
real: 浮點
blob: 二進制
text: 文本類型
NN: 是否為空
PK: 主鍵
AI: 自增長
U: 唯一的
代碼示例:
初始化并打開數據庫
bool DB_Manager::initDB()
{
QDir dir;
QString dbPath = dir.currentPath() + "/SqliteDB/Fantast.db";
QSqlDatabase db;
db = QSqlDatabase ::addDatabase("QSQLITE");//進行數據源鏈接
db.setDatabaseName(path);//這里需要注意如果這里的意思是如果存在數據庫則不再創建,沒有則創建;
return db.open();
}
查詢表數據
bool DB_Manager::quertDB()
{
QSqlQuery m_Query(db);//這里大家要注意一定要把數據庫的對象傳進去
QString sql = QString("select * from tab_Fantast");//查詢tab_Fantast表所有數據
bool flag = m_Query.exec(sql); //執行sql語句
if(!flag)
return false;
while(m_Query.next())
{
int id = m_Query.value(0);//獲取數據
QString name = m_Query.value(1);
int age = m_Query.value(2);
}
}
更新一條數據
bool DB_Manager::upDateDB()
{
QSqlQuery m_Query(db);
//upDate tab_Fantast set name = '幻想家',age = '25' where id = 1;
QString sql = QString("upDate tab_Fantast set name = '幻想家',age = '25' where id = 1 ");//更新tab_Fantast表id = 1 的數據
bool flag = m_Query.exec(sql); //執行sql語句
if(!flag)
return false;
return true;
}
插入一條數據
bool DB_Manager::insertDB()
{
QSqlQuery m_Query(db);
//insert into tab_Fantast(name,age)values("幻想家","22");
QString sql = QString("insert into tab_Fantast(name,age)values("幻想家","22")");//插入一條數據到tab_Fantast表
bool flag = m_Query.exec(sql); //執行sql語句
if(!flag)
return false;
return true;
}
刪除一條數據
bool DB_Manager::deleteDB()
{
QSqlQuery m_Query(db);
//delete from tab_Fantast where id = 1;
QString sql = QString("delete from tab_Fantast where id = 1");//刪除一條tab_Fantast表 id = 1的數據
bool flag = m_Query.exec(sql); //執行sql語句
if(!flag)
return false;
return true;
}
over:
歡迎大家關注作者在文末評論、點贊、轉發以及批評指正!
如果大家有更好的方法或有問題可以在文末評論一起討論!
共同學習!
共同進步!
文末一句話:
撒切爾夫人曾說過一段微言大義的話:
小心你的思想,它會變成你的語言;
小心你的語言,它會變成你的行動;
小心你的行動,它會變成你的習慣;
小心你的習慣,它會變成你的性格;
小心你的性格,它會變成你的命運。
你生活中的每一個選擇,都源自你的喜好,而你的喜好都出自你的性格。
命運,就是由你無數個大大小小的選擇構成,你走到哪一步,其實命運早已標好了砝碼。
你有什么樣的性格,就有什么樣的命運。
智能推薦
Android之SQLite數據庫實例
摘自《Android應用程序開發(第三版)》王向輝、張國印、沈潔編著 1、創建DBAdapter類,用于進行數據庫的操作,具體代碼如下: 2、創建People類,具體代碼如下: 3、在主Activity中(一般是MainActivity,這里是SQLiteDemoActivity),代碼如下: 4、activity_main.xml的具體代碼如下: 5、測試效果: (1)頁面顯示 (2)添加一條數...
Qt5之使用sqlite3數據庫
1、效果 2、添加 sql引用 .pro文件 添加 下面的引用 3、創建數據庫鏈接 4、保存數據庫連接 我使用了自定義數據庫鏈接名 使用SQLITE的數據庫驅動如下: 其中, databaseConnectionName值如下 3、數據庫的打開與關閉 4、指定數據庫名 關聯數據庫文件 和 打開數據庫取sqlite3數據庫文件中的所有表名 數據庫文件中,存在重復的表名, 代碼中去掉了重復表名,同時排...
Android數據庫 之 SQLite數據庫
2019獨角獸企業重金招聘Python工程師標準>>> 每個應用程序都要使用數據,Android應用程序也不例外,Android使用開源的、與操作系統無關的SQL數據庫—SQLite。 SQLite第一個Alpha版本誕生于2000年5月,它是一款輕量級數據庫,它的設計目標是嵌入式的,占用資源非常的低,只需要幾百K的內存就夠了。 SQLite已經被多種軟件和產品使用,...
Sqlite 數據庫:
1.1 SQL 語法: http://www.w3school.com.cn/sql/ SQL 語句對大小寫不敏感。 表名稱 mytable , 列: id name iage 1.1.1 SELECT - 從數據庫表中獲取數據 SELECT 列名稱 FROM 表名稱 SELECT * FROM 表名稱 的信息 SELECT 列名稱 FROM 表名稱 WHERE 列 運算符 值 下面的運算符可在 ...
猜你喜歡
數據庫SQLite
數據庫SQLite 了解最輕巧的數據庫SQLite SQLite,是一款輕型的數據庫,占用資源非常低,它的源代碼不受版權限制,能夠支持Windows/Linux/Unix等等主流的操作系統,同時能夠跟很多程序語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源的世界著名數據庫管理系統來講,它的處理速度比他們都快。SQLite的最新...
SQLite數據庫
1.SQLite數據庫簡介 SQLite 是一個開源的、內嵌式的關系型數據庫,第一個版本誕生于 2000 年 5 月,目前最高版本為 SQLite3。 學習網站:http://www.runoob.com/sqlite/sqlite-tutorial.html 安裝方法:( 我用的是ubuntu12.04) 字符界面: 圖形界面: SQLite 特性: 零配置 、靈活、可移植、自由的授權、緊湊、可...
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...