當前位置:首頁 » 數據倉庫 » qt5連接資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

qt5連接資料庫

發布時間: 2023-03-18 01:11:22

❶ Qt5 連接Mysql資料庫,可以查詢,卻不能更新

sqluser.***(),調用執行插入操作的函數沒寫

❷ linux下qt5安裝後打不開(沒反應),怎麼辦

用終端進入到qtcreator的安裝目錄,在其目錄下執行 /qtcreator,看看終端上顯示什麼錯誤。

❸ qt open access database fail database source name not found and no defau

Linux平台下解決Qt5連接mysql資料庫廳缺的問題。
輸入sudoapt-getinstalllibqt5sql5-mysql解決,這種方法只能解決畢伏燃Qt是用sudoapt-getinstallqt-sdk命令裝的低版本的Qt5(如5、2、x)缺少MySQL驅動問題。
解決在Ubuntu14、04系統下,Qt5無法連接MySQL資料庫的手虛問題(Qt5缺少MySQL驅動,Qt5缺少libqsqlmysql.so動態庫,如何安裝libqsqlmysql庫,如何用Qt5源碼編譯生成libqsqlmysql庫)。

❹ qt怎麼連接sqlserver

也可以通過如下代碼測試qt5是否支持SqlServer

#include <QApplication>
#include <QSqlDatabase>
#include <QStringList>
#include <QDebug>
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
qDebug() << "Available drivers:";
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers) //列出Qt5所有支持的資料庫類型
qDebug() << "\t" << driver;

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
qDebug() << "ODBC driver valid?" << db.isValid(); //true為支持
}

輸出結果如下:
"QSQLITE""QMYSQL""QMYSQL3""QODBC""QODBC3""QPSQL""QPSQL7"ODBC driver valid? true

2. 若是沒有編譯,可以手動編譯了qt的ODBC插件。
可以通過寬鍵編譯qt的時候加上 configure -plugin-sql-odbc來保證,也可以單獨編譯qt安裝包里的~\src\plugins\sqldrivers\odbcqmake -t vclib odbc.pronmake (註:windows中為mingw32-make)編譯後,在~\plugins\sqldrivers\下應該有qsqlodbcd4.dll(debug)或qsqlodbc4.dll
此時,可以用下面的程序,測試一下你的QT目前支持哪些資料庫訪問

二、連接SQLServer
要注意的就是連接資料庫時使用的資料庫名,sqlserver和sqlite、mysql等是不同的,並不是直接寫入資料庫名稱。 而是DSN名。 如果你已經設置好了DSN,可以直接輸入DSN名。 如果沒有,可以採用DSN連接字元串直接連接ODBC資料庫。
1、直接設定DSN的字元串連接資料庫,很簡單。
/**
*函數介紹:創建資料庫連接
*輸入參數:
*返回值:無
*/
bool DataAccess::createConnection()
{
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug() << "\t" << driver;
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");

qDebug() << "ODBC driver valid?" << db.isValid();

// 注意,對於express版本資料庫, 一定要加\\sqlexpress這種後綴 SERVER=58.67.161.109\\sqlexpress
QString dsn = "DRIVER={SQL SERVER};SERVER=58.67.161.109;DATABASE=RDBS;UID=RDBS_USER;PWD=RDBS_USER_7010387;";
db.setHostName("58.67.161.109"); //資料庫伺服器,我這里不需要
//即使dsn中已經設置了UID和PASSWD,仍然需要執行setUserName和setPassword的步團檔驟
/慎或巧/還要注意這里的用戶名要有創建表的許可權,不然創建下面的表student會不成功。
db.setDatabaseName(dsn); //資料庫名
db.setUserName("RDBS_USER");//登錄名,我再dsn里設置UID和PWD後,就不需要設置了
db.setPassword("RDBS_USER_7010387");//密碼,我再dsn里設置UID和PWD後,就不需要設置了
if(!db.open ())
{
QSqlError error = db.lastError();
QMessageBox::warning (0, "Warning", QString("Failed to open database!Error:%1").arg(error.text()));
returnfalse;
}
returntrue;
}

❺ Qt5 linux 無法連接sqlite

先安裝好sqlite,然後去系統軟體源中找qt自帶的sqlite的驅動安裝。
Linux平台下解決Qt5連接mysql資料庫的問題:輸入sudoapt-getinstalllibqt5sql5-mysql解決,這種方法只能解決Qt是用sudoapt-getinstallqt-sdk命令裝的低版本的Qt5(如5、2、x)缺少MySQL驅動問題,如果你的Qt5版本為5、7、X,那麼就不能用這種方法解決,請參考下面的方法。

❻ QT5靜態編譯無法載入資料庫插件

今彎告氏天終友攔於自己靜態編譯過了QT5.3.1, 成功用在項目上了, 記錄下configure指令.
configure -confirm-license -opensource -platform win32-msvc2013 -mp -debug-and-release -static -prefix "E:\Qt\5.3.1-static-vs2013" -qt-sql-sqlite -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebkit

其中 -mp 是埋散啟用多核編譯的開關

❼ 如何在arm嵌入板上用QT連接sqlserver資料庫

如何察敗在arm嵌入板上用QT連接sqlserver資料庫
1、打開sqlserver的企業管理器或者是SQL server Management Studio
2、伺服器類型選擇:資料庫引擎
3、伺服器名稱輸入:localhost或是本機ip
4、身份驗證選擇:如果沒開混合驗證,選windows身份驗證;如果開了混合驗證,敗祥顫可以用windows身份登宴洞錄,也可選選擇SQL server身份驗證。
5、選了SQLserver身份認證需要輸入SQL已經定義的用戶名和密碼。

❽ 求教Linux下Qt5鏈接MySQL資料庫問題

簡裂升單肆雀老,首先安裝好MYSQL資料庫,然後再安裝目錄下 MySQL\MySQL Server 5.1\bin\libmySQL.dll 這個文件拷貝到 Qt5.1.1\5.1.1\mingw48_32\bin 下面就行了歲中,Good luck

❾ 在qt裡面用release編譯運行正常,能連接到資料庫,但是無法使用資料庫查詢了,這是怎麼回事喃

在生成可執行文件給老闆看設計的時候,遇到了無法保存數據的問題,覺得可能是無法鏈接資料庫,或者缺少什麼內容的問題,在網上查了一些資料,最終測試可順利完成資料庫的鏈接。經檢驗,在window 7 32 or 64下都可以使用。使用的工具是Qt Creator 2.8.0,qt版本4.8.5 資料庫為Sqlite 若是使用其他資料庫,可能略有不同。缺肢旅

      具體操作步驟如下:

      1)在release文件夾里創建plugins文件夾,並將QT安裝目錄下的plugins\sqldrivers文件夾下的libqsqlite4.a qsqlite4.dll(資料庫不同可能一樣) 復制到release\飢圓plugins文件夾(如果sqldrivers文件夾中沒有你需要的驅動,可能就需要下載其他的驅動了,方法大致相同)

       2)main.cpp中添加以下語句 QApplication::addLibraryPath("./plugins");
       3)在構建中選中release 後進行編譯,生成exe文件。

       4)新建文件夾,在你安裝qt的目錄中(我的目錄是D:/Qt/4.8.5/bin)查找qtsql4.dll   libgcc_s_dw2-1.dll mingwm10.dll  QtCore4.dll  QtGui4.dll 然後復制到新建的文件夾中

       5)將release下的exe文件和sqldrivers文件夾復制到新建的文件夾。

       6)運行生成的exe 文件,就可測試功能伏凳了。

❿ QT中怎樣連接MYsql資料庫,遠程連接資料庫等

1: windows 下登陸mysql 命令行,(1)進入cmd (2) cd mysql 安裝路徑/mysqlserver5.6/bin
(3) 使用命令mysql -u root -p 然後根據提示輸入密碼 進入命令行

select user(); //顯示當前用戶

2: 在同一台電腦上利用Qt 訪問資料庫
(1)顯示當前電腦上安裝的資料庫驅動
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug() <<"/t" << driver;
(2)QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");/對 QMYSQL進行操作,本函數
有第二個參數 連接名
db.setHostName("localhost");//或127.0.0.1 本主機
db.setPort(3306);
db.setDatabaseName("example"); //對資料庫example進行操作
db.setUserName("wangxuetao"); //wangxuetao是一個對example資料庫有操作許可權的賬戶
db.setPassword("3791948");

於是mysql中增加一個賬戶可使用
Grant all previliges on *.* to 『wangxuetao』@』localhost』 identified by
『3791948』 with grant option;
Flush privileges; //更新

(3)db.open() 函數可由於檢測資料庫是否連接成功
cout<DBConnection();
2. m_sqlquery = new QSqlQuery("",m_sqldb);//statement 1:connect db with sql
query
3. if(result == R_OK)
4. {
5. result = m_sqlquery->exec("INSERT INTO children(fname,age) VALUES('A
nn2',13)");
6. if(!result)
7. qDebug()<<" [OK] "<<"EXEC successed";
8. m_sqlquery->exec("SELECT * FROM children c LIMIT 0,1000");
9. while(m_sqlquery->next())
10. {
11. qDebug()<value(0).toString()<value(1).
toString();
12. }
13. }