Qt創(chuàng)建SQlite數(shù)據(jù)庫的示例代碼_第1頁
Qt創(chuàng)建SQlite數(shù)據(jù)庫的示例代碼_第2頁
Qt創(chuàng)建SQlite數(shù)據(jù)庫的示例代碼_第3頁
Qt創(chuàng)建SQlite數(shù)據(jù)庫的示例代碼_第4頁
Qt創(chuàng)建SQlite數(shù)據(jù)庫的示例代碼_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第Qt創(chuàng)建SQlite數(shù)據(jù)庫的示例代碼database=QSqlDatabase::addDatabase("QSQLITE");

//qDebug()QApplication::applicationDirPath();//獲取應用程序當前目錄

database.setDatabaseName("test.sqlite3");

if(!database.open())

qDebug()"Error:Failedtoconnectdatabase."database.lastError();

else

qDebug()"Succeedtoconnectdatabase.";

//創(chuàng)建表格

QSqlQuerysql_query=database.exec("DROPTABLEstudent");

//先清空一下表,可按需添加此句

//sql_query.exec("DROPTABLEstudent");

//創(chuàng)建表格student

if(!sql_query.exec("createtablestudent(UserIdintprimarykey,UserNametext,PassWordtext)"))

qDebug()"Error:Failtocreatetable."sql_query.lastError();

else

qDebug()"Tablecreated!";

//填充表

if(!sql_query.exec("INSERTINTOstudentVALUES(1,'AppleCai','23')"))

qDebug()"Error:Failtocreatetable."sql_query.lastError();

else

qDebug()"addonecreated!";

//批量填充表

QStringListnames;

names"小A""小B""小C""小D""小E""小F""小G""小H""小I";

QStringListpassword;

password"12""23""34""45""56""67""78""89""90";

//綁定關鍵字后才能進行操作

sql_query.prepare("INSERTINTOstudent(UserId,UserName,PassWord)"

"VALUES(:UserId,:UserName,:PassWord)");

qint8i=0;

foreach(QStringname,names)//從names表里獲取每個名字

sql_query.bindValue(":UserId",i+2);//向綁定值里加入名字

sql_query.bindValue(":UserName",name);//成績

sql_query.bindValue(":PassWord",password[i]);//班級

if(!sql_query.exec())

qDebug()"Error:Fail."sql_query.lastError();

i++;

//讀取sqlite

studentInfotmp;

QVectorstudentInfoinfoVect;//數(shù)據(jù)庫緩存

sql_query.exec("SELECT*FROMstudentWHEREUserId=5ANDUserId");

while(sql_query.next())

tmp.UserId=sql_query.value(0).toInt();

tmp.UserName=sql_query.value(1).toString();

tmp.Password=sql_query.value(2).toString();

qDebug()tmp.UserIdtmp.UserNametmp.Password;

infoVect.push_back(tmp);

qDebug("done");

//更改表中數(shù)據(jù)

sql_query.prepare("UPDATEstudentSETPassWord='admin'WHEREUserName='AppleCai'");

if(!sql_query.exec())

qDebug()"Error:Fail."sql_query.lastError();

//刪除表中數(shù)據(jù)

sql_query.prepare("DELETEFROMstudentWHEREUserName='小H'");

if(!sql_query.exec())

qDebug()"Error:Fail."sql_query.lastError();

以下是個人代碼備份

這個代碼是在qt寫的,包含了數(shù)據(jù)庫的創(chuàng)建和寫入,但是我在項目準備直接在dataGrip把數(shù)據(jù)一鍵導入創(chuàng)建好數(shù)據(jù)庫之后再用qt里面的sql語句讀,所以就不需要這一部分了

#include"sqlitedatabase.h"

SqliteDatabase::SqliteDatabase()

qDebug()"hhh";

//initPickNameDB();

voidSqliteDatabase::initPickNameDB()

//創(chuàng)建并打開數(shù)據(jù)庫

QSqlDatabasedatabase;

database=QSqlDatabase::addDatabase("QSQLITE");

//qDebug()QApplication::applicationDirPath();

database.setDatabaseName(QApplication::applicationDirPath()+"/CONFIG/"+"PickNameDB.sqlite3");

if(!database.open())

qDebug()"Error:Failedtoconnectdatabase."database.lastError();

else

qDebug()"Succeedtoconnectdatabase.";

//創(chuàng)建表格先清空一下表

QSqlQuerysql_query=database.exec("DROPTABLEdepartment");

sql_query=database.exec("DROPTABLEperson");

if(!sql_query.exec("createtabledepartment(Idintprimarykeynotnull,"

"DeptNamevchar(50)notnull)"))

qDebug()"Error:Failtocreatedepartmenttable."sql_query.lastError();

else

qDebug()"Departmenttablecreated!";

if(!sql_query.exec("createtableperson(Idintprimarykeynotnull,"

"DeptIDintegernotnull,"

"PerNamevchar(50)notnull,"

"foreignkey(DeptID)referencesdepartment(Id))"))

qDebug()"Error:Failtocreatepersontable."sql_query.lastError();

//填充表

//sql_query.exec("insertintodepartment(id,name)values(1,'辦領導')");

//sql_query.exec("insertintodepartment(id,name)values(2,'綜合處')");

//sql_query.exec("insertintodepartment(id,name)values(3,'政策法規(guī)處')");

//sql_query.exec("insertintodepartment(id,name)values(4,'機構改革處')");

//sql_query.exec("insertintodepartment(id,name)values(5,'黨群政法行政機構編制管理處')");

//sql_query.exec("insertintodepartment(id,name)values(6,'政府行政機構編制管理處')");

//sql_query.exec("insertintodepartment(id,name)values(7,'市縣行政機構編制管理處')");

//sql_query.exec("insertintodepartment(id,name)values(8,'事業(yè)機構編制管理處')");

//sql_query.exec("insertintodepartment(id,name)values(9,'事業(yè)單位登記管理處')");

//sql_query.exec("insertintodepartment(id,name)values(10,'機構編制監(jiān)督檢查處')");

//sql_query.exec("insertintodepartment(id,name)values(11,'人事處')");

//sql_query.exec("insertintodepartment(id,name)values(12,'機關黨委')");

//sql_query.exec("insertintodepartment(id,name)values(13,'省機構編制電子政務中心')");

//sql_query.exec("insertintodepartment(id,name)values(14,'省機構編制研究中心')");

//批量填充表

QStringListdeptNames;

deptNames"辦領導""綜合處""政策法規(guī)處""機構改革處"

"黨群政法行政機構編制管理處""政府行政機構編制管理處"

"市縣行政機構編制管理處""事業(yè)機構編制管理處""事業(yè)單位登記管理處"

"機構編制監(jiān)督檢查處""人事處""機關黨委"

"省機構編制電子政務中心""省機構編制研究中心";

//綁定關鍵字后才能進行操作

sql_query.prepare("INSERTINTOdepartment(Id,DeptName)"

"VALUES(:Id,:DeptName)");

qint8i=0;

foreach(QStringdeptName,deptNames)

sql_query.bi

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論