qt連接mysql數(shù)據(jù)庫 qt如何連數(shù)據(jù)庫?
qt如何連數(shù)據(jù)庫?連接到MySQL數(shù)據(jù)庫QSqlDatabase DB=QSqlDatabase::adddatabase(“qmysql”)//使用MySQL數(shù)據(jù)庫驅(qū)動程序db.setHostNam
qt如何連數(shù)據(jù)庫?
連接到MySQL數(shù)據(jù)庫QSqlDatabase DB=QSqlDatabase::adddatabase(“qmysql”)//使用MySQL數(shù)據(jù)庫驅(qū)動程序db.setHostName文件(“l(fā)ocalhost”)db.setDatabaseName數(shù)據(jù)庫名稱(“exampledb”)//數(shù)據(jù)庫名稱數(shù)據(jù)庫設(shè)置用戶名(“SA”)//用戶名數(shù)據(jù)庫設(shè)置密碼(“1”)//密碼bool OK=數(shù)據(jù)庫打開()//嘗試連接到數(shù)據(jù)庫,如果(確定){qsqlquery myquery}如果(我的查詢.exec(“select*from employeedb”){int num=0 if(數(shù)據(jù)庫驅(qū)動器()->hasFeature(QSqlDriver::QuerySize)){num=myquery.size文件()//如果支持受結(jié)果影響的行數(shù),則記錄}否則直接{myquery.last文件()//否則,導(dǎo)航到結(jié)果的最后一個num=我的查詢.at()1}//添加此處數(shù)據(jù)庫的查詢結(jié)果處理操作}else//如果查詢失敗{qsqlerror}=myquery.lastError錯誤()}}else//打開數(shù)據(jù)庫{}失敗
您可以使用QT自己的數(shù)據(jù)庫來完成操作。以下是參考代碼:
QSqlDatabase DB=QSqlDatabase::adddatabase(“qsqlite”)//add databasedb.setDatabaseName數(shù)據(jù)庫名稱(" 注釋.db“”//創(chuàng)建注釋.db文件存儲數(shù)據(jù)數(shù)據(jù)庫打開()//打開database query=qsqlquery(DB)//以訪問數(shù)據(jù)庫queryquery.exec(30)//執(zhí)行指令(XXX為SQL(說明)數(shù)據(jù)庫關(guān)閉()//一般來說,數(shù)據(jù)庫關(guān)閉時,DB變量會被用作全局變量或數(shù)據(jù)成員。您可以在需要訪問時獲取查詢。
為了實(shí)現(xiàn)上述功能,我們需要仔細(xì)研究qstring和qstringlist,它們主要用于臨時存儲數(shù)據(jù)和分割數(shù)據(jù)。此外,我們還需要了解qfile、QDIR、qfileinfo和qtextstream,它們主要用于讀取文本數(shù)據(jù)。查看qvector或qlist以存儲讀取的數(shù)據(jù)。
此外,您還需要精通SQL、select、create等基本操作。否則,QT就看不見了。QT不會檢查SQL的準(zhǔn)確性。
如何用Qt連接數(shù)據(jù)庫并導(dǎo)入文件?
1:在windows下登錄MySQL命令行,(1)輸入CMD(2)CD MySQL installation path/mysqlserver5.6/bin(3)使用MySQL-U root-P命令,然后輸入命令行select user()//根據(jù)提示顯示當(dāng)前用戶。2:使用QT訪問同一臺計(jì)算機(jī)上的數(shù)據(jù)庫(1)顯示數(shù)據(jù)庫驅(qū)動程序qsstringlist drivers=QSqlDatabase::drivers()foreach(qsstringdriver,drivers)qdebug()exec(“insert into children(fname,age)values(“Ann2”,13)”)6。如果(!結(jié)果)7。Qdebug()exec(“select*from children C limit 01000”)9而(m_0;sqlquery->next())10。{ 11. qDebug()