當前位置:首頁 » 參考文獻 » qt資料庫操作

qt資料庫操作

發布時間: 2021-03-31 02:15:43

Ⅰ 如何用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(); //關閉資料庫

大致只要知道以上例子就OK了。一般而言會將db變數作為全局變數或者數據成員,當需要訪問的時候就獲取一個query就可以了。
另外,要實現所提到的功能,要好好看看QString、QStringList,這兩玩意主要是臨時存放數據、分割數據等作用,另外,要看QFile、QDir、QFileInfo、QTextStream,這四個主要用來讀取文本數據。看看QVector或者QList等來存放讀出來的數據。
另外,要實現這玩意,SQL的語句不要求精通,但是基本的Create、Insert、Select、Delete等操作要准確無誤。否則出錯了QT是看不出來的。QT不會檢測SQL的准確性的。
再另外,在QT的編程中,C++和類都很重要,所以還是得看看。

還有不明白的話歡迎留言

Ⅱ qt怎樣創建資料庫以及資料庫的操作

QT創建和插入的操作代碼如下:
bool database::createDatabase()
{
QSqlQuery query; // 此處請查詢 query的相關操作
qDebug() << "Start to create table...";
//create table: User
query.exec("CREATE TABLE [User] ( [userId] VARCHAR(40) NOT NULL, [username] VARCHAR(40) NOT NULL, [email] VARCHAR(40), [password] VARCHAR(40), [city] VARCHAR(20), PRIMARY KEY([userId]) )"); // 一定注意不要拼寫錯誤,引號內是不提示拼寫錯誤的。
//create table: Connect
query.exec("CREATE TABLE [Connect] ( [LeftUser] VARCHAR(40) NOT NULL, [RightUser] VARCHAR(40) NOT NULL, [relation] INTEGER DEFAULT '0' NULL, PRIMARY KEY ([LeftUser], [RightUser]))");
if (query.lastError().isValid())
{
qDebug() << query.lastError();
return false;
}
else
{
qDebug() << "Create database successfully.";
}
return true;
}
插入操作

bool database::adser( User user )
{
if (!db.isOpen())
{
createconnection();
}
QSqlQuery query;
qDebug() << "start to insert data";
query.exec("INSERT INTO [User] ( userId, username, email, password, city) VALUES(?,?,?,?,?)");
QVariantList userId;
userId << user.getUserId();
query.addBindValue(userId);
QVariantList username;
username << user.getUserName();
query.addBindValue(username);
QVariantList email;
email << user.getEmail();
query.addBindValue(email);
QVariantList password;
password << user.getPassword();
query.addBindValue(password);
QVariantList city;
city << user.getCity();
query.addBindValue(city);
try
{
if (!query.execBatch())
{
qDebug() << query.lastQuery();
qDebug() << query.lastError();
return NULL;
}
}
catch(...)
{
QMessageBox::critical(0, "Add New Node error!",
"Unable to add a new Node!/n/n"
"Click Cancel to exit.", QMessageBox::Cancel);
}
if( !UpdateConnectTable(user.getUserId(),user.getUserId(),2))
{
QMessageBox::critical(0,"","Update table Connect error");
return NULL;
}
return true;
}

Ⅲ QT中如何用界面對資料庫的直接操作,包括查詢和連接

qt中有qtsql模塊支持該操作,底層一般都是用驅動插件實現的,利用的是sqlite資料庫,相關的類有
qsqldatabase, qsqlquery,qsqlrecord等,謝謝採納

Ⅳ 如何用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的准確性的。

Ⅳ 使用QT連接到了資料庫(sqlsever)但是怎麼操作才能刪除資料庫表中的一個記錄

執行sql,delete from TABLE where 。。。。。。。。。。。
~~~~~~~~~~~~~~~~~~~~~~~~~
where條件確定刪除多少條記錄

Ⅵ 在Linux下的Qt中操作資料庫,把內容插入資料庫,然後在ui界面上顯示出我插入的資料庫

最基本實現:
按照lindEdit裡面輸入的內容查找資料庫並顯示出來。
最高實現目標:
用了個combobox裡面有幾個專屬性都是資料庫屬裡面有的,先選擇相應的屬性,再輸入對應的內容到linEdit,按照lindEdit裡面輸入的內容查找資料庫並顯示出來。

Ⅶ qt怎樣創建資料庫以及資料庫的操作

qt可以實現連接各種資料庫,這里介紹qt自帶的一種資料庫(Qsqlite)#include<QSqlQuery>#include<QObject>#include<QVariantList>#include<QDebug>#include<QSqlError>#include<QTextCodec>#include<QObject>staticboolcreateConnection(){QSqlDatabasedb=QSqlDatabase::addDatabase("QSQLITE");db.setDatabaseName("mytest.db");if(!db.open())returnfalse;QSqlQueryquery;//query.exec(QObject::tr("createtablestudent(idintprimarykey,namevchar)"));//query.exec(QObject::tr("insertintostudentvalues(0,'劉')"));////query.exec(QObject::tr("insertintostudentvalues(1,'剛')"));//query.exec(QObject::tr("insertintostudentvalues(2,'紅')"));//query.prepare("insertintostudentvalues(?,?)");//-------------------------------------------------------//通過下面這段代碼可以實現向資料庫插入變數//--------------------------------------------------------QVariantListages;intx1,x2,x3,x4;x1=12;x2=13;x3=14;x4=15;ages<<x1<<x2<<x3<<x4;query.addBindValue(ages);QVariantListnames;names<<QObject::tr("小王")<<QObject::tr("小明")<<QObject::tr("小張")<<QObject::tr("小新");//如果要提交空串,用QVariant(QVariant::String)代替名字query.addBindValue(names);if(!query.execBatch())//進行批處理,如果出錯就輸出錯誤qDebug()<<query.lastError();returntrue;}#endif//DATABASE_H然後用QSqlTableModel實現資料庫數據顯示

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731