How to connect mysql and qt: first download and install mysql and qt; then enter SQL related instructions in the "cmd.exe" software; then create the QT program; finally add in the "sql_test.pro" file "QT =sql" is enough.
Recommendation: "mysql video tutorial"
Because QT is needed to read the data in the database , and save the data to the database. It took a day to finally realize reading the data in the database from QT. There is a lot of relevant information on the Internet, but it is not comprehensive. Some problems arise in the middle, which are troublesome to solve. Therefore, this article downloads and installs from MYSQL and connects QT to MYSQL in as much detail as possible. If there are any shortcomings, please forgive me.
1. QT5.5 download
The windows32 QT5.5 version used in this article is (qt-opensource-windows-x86-mingw492-5.5.10), which can be downloaded from my Baidu Cloud: https://pan.baidu.com/s/1XsVmgd3Qd-J0BHPVOtMVkA download
If you choose a higher version, you can refer to Baidu for the specific installation method.
2. MYSQL5.6 download
Since QT uses Windows 32-bit, MYSQL should also choose the Windows 32-bit version as mysql-5.6.39-win32.zip. (If QT selects Windows 64-bit, MYSQL should select Windows 64-bit),
can be downloaded from my Baidu Cloud: https://pan.baidu.com/s/1XsVmgd3Qd-J0BHPVOtMVkA.
If you choose a higher version, you can refer to Baidu for the specific download method.
3. MYSQL5.6 installation
1) Extract mysql-5.6.39-win32.zip to MYSQL SERVER in the D drive, and rename it to mysql-5.6. The result after decompression and modification is shown in Figure 1-1.
# 图 1-1
## 2) Modify my-default.ini, after modification, as shown in Figure 1-2 ## . Right-click My Computer, click Properties, click Advanced System Settings, click Environment Variables, and add;D:\MYSQL SERVER\mysql-5.6\bin to PATH (don’t forget the semicolon, according to your own installation Directory rewriting), click OK.
4) Find cmd.exe in the C drive and open it with administrator rights. Execute the following instructions respectively:
d: cd MYSQL SERVER\mysql-5.6\bin
mysqld -initalize -user=mysql -console mysqld -install, after entering this command, it will print Service successfully installednet start mysql, after entering this command, it will print that the MySQL service has been started successfully. At this point, MYSQL5.6 has been installed successfully and is running.
4. MYSQL login and password change
1) In the cmd.exe software, continue to enter SQL related commands:
mysql -u root -p, Enter password: appears after entering this command, press Enter directly when logging in for the first time, and enter the mysql software. As shown in Figure 1-3
# 2) Add root password. mysql> set password for root@localhost=password('88888888');
mysql>exit
Enter this command and exit.Log in again, enter mysql -u root -p, Enter password: will appear after entering this command, enter 88888888. If the entered password is not 88888888, an error will appear, as shown in Figure 1-4 ## 3) Add a test table in Add the student table to the test library and add some data. The specific operations are shown in Figure 1-5. At this point, the MYSQL part has been completed. (Note that it is added in the test library. For QT, test should be selected;
#1) Copy libmysql.dll and libmysqld.dll in the lib directory of the mysql-5.6 file to the bin file of mingw493_32 in Qt5.5. Shown in Figure 1-6; Name the project sql_test;
Add QT =sql
main.cpp in the sql_test.pro file and change it to
1 #include <qcoreapplication> 2 #include <qsqldatabase> 3 #include <qsqlquery> 4 #include <qsqlerror> 5 #include <qtdebug> 6 void connect_mysql() 7 { 8 QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL"); 9 db.setHostName("127.0.0.1"); //连接数据库主机名,这里需要注意(若填的为”127.0.0.1“,出现不能连接,则改为localhost)10 db.setPort(3306); //连接数据库端口号,与设置一致11 db.setDatabaseName("test"); //连接数据库名,与设置一致12 db.setUserName("root"); //数据库用户名,与设置一致13 db.setPassword("88888888"); //数据库密码,与设置一致14 db.open();15 if(!db.open())16 {17 qDebug()3) Test results<p></p> <p> </p> <p><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/020/5befd6fa6bc61c487383b195bd9fa272-5.png?x-oss-process=image/resize,p_40" class="lazy" alt="" style="max-width:90%" style="max-width:90%"> Figure 1-7</p> <p></p> The results show that QT has successfully read the student table in MYSQL. <p></p> <p>The project can be downloaded at https://github.com/xtuwang/Qt_Project/tree/xtuwang-patch-1. </p> <p> </p></qtdebug></qsqlerror></qsqlquery></qsqldatabase></qcoreapplication>
The above is the detailed content of How to connect mysql with qt. For more information, please follow other related articles on the PHP Chinese website!

MySQLoffersvariousstorageengines,eachsuitedfordifferentusecases:1)InnoDBisidealforapplicationsneedingACIDcomplianceandhighconcurrency,supportingtransactionsandforeignkeys.2)MyISAMisbestforread-heavyworkloads,lackingtransactionsupport.3)Memoryengineis

Common security vulnerabilities in MySQL include SQL injection, weak passwords, improper permission configuration, and unupdated software. 1. SQL injection can be prevented by using preprocessing statements. 2. Weak passwords can be avoided by forcibly using strong password strategies. 3. Improper permission configuration can be resolved through regular review and adjustment of user permissions. 4. Unupdated software can be patched by regularly checking and updating the MySQL version.

Identifying slow queries in MySQL can be achieved by enabling slow query logs and setting thresholds. 1. Enable slow query logs and set thresholds. 2. View and analyze slow query log files, and use tools such as mysqldumpslow or pt-query-digest for in-depth analysis. 3. Optimizing slow queries can be achieved through index optimization, query rewriting and avoiding the use of SELECT*.

To monitor the health and performance of MySQL servers, you should pay attention to system health, performance metrics and query execution. 1) Monitor system health: Use top, htop or SHOWGLOBALSTATUS commands to view CPU, memory, disk I/O and network activities. 2) Track performance indicators: monitor key indicators such as query number per second, average query time and cache hit rate. 3) Ensure query execution optimization: Enable slow query logs, record and optimize queries whose execution time exceeds the set threshold.

The main difference between MySQL and MariaDB is performance, functionality and license: 1. MySQL is developed by Oracle, and MariaDB is its fork. 2. MariaDB may perform better in high load environments. 3.MariaDB provides more storage engines and functions. 4.MySQL adopts a dual license, and MariaDB is completely open source. The existing infrastructure, performance requirements, functional requirements and license costs should be taken into account when choosing.

MySQL uses a GPL license. 1) The GPL license allows the free use, modification and distribution of MySQL, but the modified distribution must comply with GPL. 2) Commercial licenses can avoid public modifications and are suitable for commercial applications that require confidentiality.

The situations when choosing InnoDB instead of MyISAM include: 1) transaction support, 2) high concurrency environment, 3) high data consistency; conversely, the situation when choosing MyISAM includes: 1) mainly read operations, 2) no transaction support is required. InnoDB is suitable for applications that require high data consistency and transaction processing, such as e-commerce platforms, while MyISAM is suitable for read-intensive and transaction-free applications such as blog systems.

In MySQL, the function of foreign keys is to establish the relationship between tables and ensure the consistency and integrity of the data. Foreign keys maintain the effectiveness of data through reference integrity checks and cascading operations. Pay attention to performance optimization and avoid common errors when using them.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Atom editor mac version download
The most popular open source editor

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

SublimeText3 English version
Recommended: Win version, supports code prompts!

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.
