當前位置:首頁 » 操作系統 » qt使用資料庫

qt使用資料庫

發布時間: 2024-08-02 10:09:31

⑴ Qt中用資料庫和二維數組有什麼區別

用數組的優勢是速度快,讀寫方便,缺點:數據量不能太大,程序結束後數據不會保存在硬碟上,想要保存還得用文件或資料庫
用資料庫相比數組的優點:數據可以存在硬碟,可以存儲更多的數據。缺點:讀寫速度慢些

⑵ QT中table view怎麼顯示sqlite資料庫的內容

在QT的widget中用tableview顯示sqlite資料庫表中的內容。
假設有資料庫文件test.db,有表table(id integer, name nvarchar(20),age integer),且有數條數據。
首先用QTcreator創建一個基於Widget類的窗口,再拖一個tableview到widget中,保存,然後按照如下方法進行:
1.在widget.h中增添頭文件:QtSql/qsql.h、QtSql/QsqlDatabase、QtSql/QsqlQuery、QtSql/QsqlQueryModel
2.在.pro工程文件中添加:QT+=sql
3.在widget.cpp中widget的構造函數中添加如下代碼:
QsqDatabase db = QsqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("test.db");
if(!db.open())
{
//錯誤處理
}
static QSqlQueryModel *model = new QSqlQueryModel(ui->tableview);
model->setQuery(QString("select * from table"));
model->setHeaderData(0,Qt::Horizontal,QObject::tr("編號"));
model->setHeaderData(1,Qt::Horizontal,QObject::tr("姓名"));
model->setHeaderData(2,Qt::Horizontal,QObject::tr("年齡"));
ui->tableview->setModel(model);
db->close();
這樣之後,table表裡的內容就會顯示到tableview中了。

⑶ 如何用Qt連接資料庫並導入文件

可以使用QT自帶的資料庫完成操作,以下是參考代碼:

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); //添加資料庫

db.setDatabaseName("note.db"); //創建一個note.db的文件存儲數據

db.open(); //開啟資料庫
query = QSqlQuery(db); //獲得訪問資料庫的query
query.exec(XXX); //執行指令(XXX為SQL指令)
db.close(); //關閉資料庫

一般而言會將db變數作為全局變數或者數據成員,當需要訪問的時候就獲取一個query就可以了。

要實現所提到的功能,要好好看看QString、QStringList,這兩玩意主要是臨時存放數據、分割數據等作用,另外,要看QFile、QDir、QFileInfo、QTextStream,這四個主要用來讀取文本數據。看看QVector或者QList等來存放讀出來的數據。

另外,要實現這玩意,SQL的語句不要求精通,但是基本的Create、Insert、Select、Delete等操作要准確無誤。否則出錯了QT是看不出來的。QT不會檢測SQL的准確性的。

熱點內容
如何給監控加訪問密碼 發布:2024-11-25 16:45:13 瀏覽:600
國外安卓音樂播放器哪個好 發布:2024-11-25 16:35:58 瀏覽:142
我的世界伺服器增加粒子 發布:2024-11-25 16:28:29 瀏覽:717
帶內核的安卓x86是什麼意思 發布:2024-11-25 16:27:01 瀏覽:272
php了解 發布:2024-11-25 16:16:26 瀏覽:933
個人搭建伺服器要錢不 發布:2024-11-25 16:06:56 瀏覽:832
伺服器磁碟滿了怎麼辦 發布:2024-11-25 16:06:14 瀏覽:19
python代碼文本分類 發布:2024-11-25 16:05:22 瀏覽:224
加密cf備份 發布:2024-11-25 16:05:21 瀏覽:442
java加鎖 發布:2024-11-25 15:50:26 瀏覽:397