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

qt使用mysql資料庫

發布時間: 2022-04-29 11:07:33

① QT怎麼ssh連接mysql資料庫

在這里小編使用的是SQLyogEnt進行遠程連接配置了SSH的資料庫。通過桌面的SQLyogEnt運行資料庫客戶端。
在界面中點擊【新建】按鈕,在Mysql下填寫Mysql資料庫的ip地址、用戶名、密碼、埠(默認在3306)就好,資料庫名稱。這里跟普通的連接資料庫的方法一致。
這個時候讀者可以點擊一下【測試連接】,這個時候點擊測試連接去連接資料庫是不會成功的,因為資料庫配置了SSH訪問。如下圖:
配置完成Mysql信息後,在旁邊選擇【SSH】

② 如何設置Qt連接Mysql資料庫時的字元集

在你的程序代碼設置資料庫後添加一句:
db.exec("SET
NAMES
'Latin1'");
//直接使用資料庫的latin1編碼

③ 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. }

④ 如何把qt程序里的數據讀入到mysql資料庫

引入 資料庫創建的問題解決了,接下來就該使用資料庫實現應用程序功能的時候了。基 本的操作包括創建、讀娶更新、刪除,即我們通常說的 CRUD(Create, Read, Update, Delete)。 在實現這些操作的時候,我們會使用到兩個比較重要的類

⑤ qt 關於MYSQL資料庫名稱出現的問題

游戲有游戲的規則,各個軟體也有自己的默認規則的。建資料庫表名時別用數字命名,會和操作軟體起沖突的。這是個規范問題,遵循下就好了,沒有啥為什麼。就如你寫個程序,沒有判斷的話,啥都行。再者,你要是建類名的時候,寫數字:123,直接會出現紅X的,不合規。希望有用吧

⑥ ubuntu linux 下使用Qt連接MySQL資料庫

Linux下完整的MySQL開發需要安裝伺服器端,如果安裝客戶端也沒什麼不好。直接在軟體中心搜mysql,把client和server選上。
環境說明:
ubuntu
10.04.2
QtSDK
(1.5G安裝包的那個)
mysql5.1
1.安裝MySQL
Linux下完整的MySQL開發需要安裝伺服器端,如果安裝客戶端也沒什麼不好。直接在軟體中心搜mysql,把client和server選上。
server在安裝時會提示為root用戶設置密碼,設一個好了。
我使用的是mysql5.1版本,用戶名密碼存儲在一個叫mysql的資料庫里,只有管理員級別才能看到。
如果直接在終端中輸入
mysql,可能會提示ERROR
1045
(28000),這是因為這時候你是以自己用戶名訪問資料庫,而目前資料庫中只有一個root用戶。沒關系,如果有必要,可以添加一個用戶進去:
mysql
-uroot
-p
--
以root用戶登錄
grant
usage
on
*.*
to
mmy@localhost;
--
授權名為mmy的用戶本地登錄,這里換成自己的用戶名就可以了
不過這時候直接mysql只有普通的許可權,創建資料庫、操作mysql都是不可以的,如果真有將其賦予管理員許可權的需要,可以自己查閱有關資料。
2.安裝Qt的MySQL驅動。
方法一:直接sudo
apt-get
install
libqt4-sql-mysql
,這是Qt4的mysql驅動,就不用自己費勁編譯了,不過可能會額外下載一些東西。

/usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷貝到你的QtSDK
sqldrivers目錄下,我當時是直接用普通許可權安裝,目錄為:~/QtSDK/Desktop/Qt/473/gcc/plugins/sqldrivers
方法二:其實你也可以sudo
apt-get
download
libqt4-sql-mysql,把包解壓縮,然後把裡面的so文件搜出來直接拷貝到那裡。
方法三:乖乖按照官方方法編譯,但是貌似可行性不大,因為新版本的QtSDK並沒有src目錄,默認也沒有mysql的驅動。
3.做個demo試一下
記得在pro文件中
QT
+=那裡加上sql,否則qmake是不會去找sql的相關部分的
復制代碼代碼如下:
#include
QtCore/QCoreApplication
#include
QSqlDatabase
#include
QDebug
int
main(int
argc,
char
*argv[])
{
QCoreApplication
a(argc,
argv);
QSqlDatabase
db=QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("study");
db.setUserName("root");
db.setPassword("tyh");
if(!db.open()){
qDebug()
"Unable
to
open
database";
}else{
qDebug()
"Database
connection
established";
}
return
a.exec();
}
這里study這個資料庫之前我已經創建過了,如果連接成功,就會顯示Database
connection
established。
我是建立的控制台程序哈。
軟體教程小編推薦:
Linux安裝配置MariaDB資料庫全程詳解
Linux系統怎麼設置開機密碼?
Linux啟動菜單修改教程

⑦ qt5.9怎麼向mysql資料庫中插入數據

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

⑧ qt連接mysql資料庫怎麼編譯驅動

下載mysql C鏈接庫
選擇C的鏈接庫

2
將C的連接庫解壓到到C:/mysql 目錄下

3
我的QT 安裝在C盤目錄下,版本號是4.8.6 所以打開目錄
C:\QT\4.8.6\src\plugins\sqldrivers\mysql

4
將C:/mysql/lib/libmysql.dll 和C:/mysql/lib/libmysql.lib
復制到此處。

5
編輯目錄下的mysql.pro文件
添加

INCLUDEPATH+="C:/mysql/include"
LIBS+="C:/mysql/lib/opt/libmysql.lib"

運行qt的控制台窗口,方便使用qmake

切換到目錄下
C:\QT\4.8.6\src\plugins\sqldrivers\mysql

執行qmake

運行VS2010的控制台工具

切換到
C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目錄下
執行nmake 和nmake release
是nmake不是make

這樣在C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目錄下的debug 目錄和release 目錄下分別會產生

qsqlmysqld4.dll qsqlmysqld4.lib

qsqlmysql4.dll qsqlmysql4.lib

將上面提到的四個文件復制到
C:\QT\4.8.6\plugins\sqldrivers

最後把
C:\mysql\lib\opt\libmysql.dll
C:\mysql\lib\opt\libmysql.lib
復制到
C:\Windows\system32\ 目錄下。
最後測試mysql 可不可以在qt中正常使用
新建一個qt 控制台項目

輸入以下代碼

#include <QCoreApplication>
#include <QDebug>
#include <qstring.h>
#include <qstringlist.h>
#include <qsql.h>
#include <qsqldatabase.h>int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug() << "Available drivers:";
QStringList drivers = QSqlDatabase::drivers();qDebug() << drivers;return a.exec();
}

運行測試一下,看看有沒有圖片中紅圈圈中的兩項內容

⑨ qt5.3怎麼連接mysql資料庫

你必須把安裝好的mysql的
C:\Program Files\MySQL\MySQL Server 5.6\lib 下的
libmysql.dll 和 libmysql.lib 拷貝進 qt的G:\Qt\Qt5.3.1\5.3\mingw482_32\bin下

⑩ 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. }