Qt 的sqlite資料庫的學習

2021-09-06 06:22:58 字數 1597 閱讀 9427

我們先了解一下基本的類:qsqldatabase 提供資料庫的連線操作,qsqlquery是執行sql語句的類,如:

qsqlqueryquery(db);

query.exec(

"insert

into

person

values(101,

'danny',

'young')");

下面是如何建立乙個資料庫以及乙個資料表。

void mydatabase::createdb()

else

qsqlquery query(db);

bool bsuccess =

query.exec("create table person (id int primary key, "

"firstname varchar(20), lastname varchar(20))"); //建立乙個表

query.exec("insert into person values(101, 'danny', 'young')");

query.exec("insert into person values(102, 'christine', 'holand')");

query.exec("insert into person values(103, 'lars', 'gordon')");

query.exec("insert into person values(104, 'roberto', 'robitaille')");

query.exec("insert into person values(105, 'maria', 'papadopoulos')");

if(!bsuccess)

else

"insert into persons values ('xue','chao','langfang')");

}

當然我們一定要記住這個順序,先建立資料庫,然後再去建立乙個表(作為菜鳥的我犯這個錯誤了),還有一點需要注意的紅色標記的那句話,我參考的數籍一般都這樣寫

db.setdatabasename("

:memory:

");

這樣就把生成的資料庫檔案是在記憶體當中的,在工程檔案目錄下找不到。

上面使我們建立了乙個資料庫和乙個表,那麼我們如何把它呈現在我們的qtableview部件上呢?

qsqltablemodel *model = new

qsqltablemodel;

model->settable("

person");

model->seteditstrategy(qsqltablemodel::onmanualsubmit);

model->select

(); ui->tableview->setmodel(model);

ui->tableview->show();

上面的**就把資料庫中的資訊不加篩選的列印到控制項上了。

第一次寫部落格大家多多包涵。。。

Qt 的sqlite資料庫的學習

我們先了解一下基本的類 qsqldatabase 提供資料庫的連線操作,qsqlquery 是執行sql 語句的類,如 qsqlquery query db query exec insertintopersonvalues 101,danny young 下面是如何建立乙個資料庫以及乙個資料表。v...

Qt 的sqlite資料庫的學習

我們先了解一下基本的類 qsqldatabase 提供資料庫的連線操作,qsqlquery是執行sql語句的類,如 qsqlqueryquery db query.exec insert into person values 101,danny young 下面是如何建立乙個資料庫以及乙個資料表。v...

Qt 的sqlite資料庫的學習

我們先了解一下基本的類 qsqldatabase 提供資料庫的連線操作,qsqlquery是執行sql語句的類,如 qsqlqueryquery db query.exec insert into person values 101,danny young 下面是如何建立乙個資料庫以及乙個資料表。v...