在什么地方可以接到做网站的活,海口网站建设公司排名,下载字体如何在wordpress,马克 扎克伯格大学做的网站【 声明#xff1a;版权所有#xff0c;欢迎转载#xff0c;请勿用于商业用途。 联系信箱#xff1a;feixiaoxing 163.com】 网上介绍的关于QT和mysql部分的内容#xff0c;都是利用Qt自带的mysql库来实现数据读写的。但是事实上来说#xff0c;即使不用qt带的库#xf…【 声明版权所有欢迎转载请勿用于商业用途。 联系信箱feixiaoxing 163.com】 网上介绍的关于QT和mysql部分的内容都是利用Qt自带的mysql库来实现数据读写的。但是事实上来说即使不用qt带的库不用odbc直接使用mysql安装包自带的lib库和dll库也是可以实现数据访问的而且也并不复杂。今天我们正好借着这个机会学习一下在qt上面怎么使用mysql自带的库进行数据访问。 1、安装mysql软件 这部分可以安装稍微旧一点、但是比较稳定的软件。 2、创建qt widget工程 创建一个qt widget工程为后续的软件修改做准备。需要注意的是因为使用的mysql lib库和dll库他们都是64位的所以创建qt widget的时候也必须是64位的。 3、用mysql命令创建一个demo databases 一般创建的databases命令就是create databases demo。创建好demo数据库之后直接show一下就可以了。 4、设置include目录 因为涉及到mysql头文件目录的位置所以include一下
C:\Program Files\MySQL\MySQL Server 5.7\include 5、设置lib文件 很多时候并不需要设置lib目录lib文件少的话直接设置带目录的lib文件即可
C:\Program Files\MySQL\MySQL Server 5.7\lib\libmysql.lib 6、将lib目录下面的dll文件copy到exe同级目录 这部分工作可以提前做不然到时候debug的时候是启动不了的。 7、编写源代码、编译调试 源代码的部分其实就比较简单了。首先就是mysql_init初始化接着用mysql_real_connect链接数据库。后续的动作基本就是sop了比如创建表、插入数据、更新数据、删除数据、查找数据、打印数据等等这部分找到对应的api一个一个去调试即可。当然结束的时候最好把mysql的资源也要一个一个去释放掉。
#include stdio.h
#include stdlib.h
#include mysql.h// Function to handle errors
void handle_error(MYSQL *conn, const char *message) {fprintf(stderr, %s: %s\n, message, mysql_error(conn));mysql_close(conn);exit(1);
}int main() {MYSQL *conn;// Initialize MySQL libraryconn mysql_init(NULL);if (conn NULL) {fprintf(stderr, mysql_init() failed\n);exit(1);}// Connect to MySQL serverif (mysql_real_connect(conn, localhost, root, 12345678, demo, 0, NULL, 0) NULL) {handle_error(conn, mysql_real_connect() failed);}// Create a table (if it doesnt exist)if (mysql_query(conn, CREATE TABLE IF NOT EXISTS your_table (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255)))) {handle_error(conn, mysql_query() failed for CREATE TABLE);}// Example: Insert dataif (mysql_query(conn, INSERT INTO your_table (name) VALUES (John), (Jane))) {handle_error(conn, mysql_query() failed for INSERT);}// Example: Update dataif (mysql_query(conn, UPDATE your_table SET name Johnny WHERE id 1)) {handle_error(conn, mysql_query() failed for UPDATE);}// Example: Delete dataif (mysql_query(conn, DELETE FROM your_table WHERE id 2)) {handle_error(conn, mysql_query() failed for DELETE);}// Example: Query dataif (mysql_query(conn, SELECT * FROM your_table)) {handle_error(conn, mysql_query() failed for SELECT);}// Retrieve and print resultsMYSQL_RES *result mysql_store_result(conn);if (result NULL) {handle_error(conn, mysql_store_result() failed);}MYSQL_ROW row;while ((row mysql_fetch_row(result))) {printf(ID: %s, Name: %s\n, row[0], row[1]);}// Free result setmysql_free_result(result);// Close connectionmysql_close(conn);// Cleanup MySQL librarymysql_library_end();return 0;
}