饰品销售网站功能建设庆阳网站设计师招聘
2026/5/20 20:41:17 网站建设 项目流程
饰品销售网站功能建设,庆阳网站设计师招聘,广州多区最新通告,wordpress换域名主题连接库下载mysql接口介绍workbench连接库下载 要想用C语言连接mysql#xff0c;我们需要从mysql官网下载mysql提供的连接库 选择C API 然后选择MySQL Connector/C 8.0 最后挑选自己的配置即可。 如果我们一开始使用yum源安装的话#xff0c;他已经自动帮我们安装了连接库…连接库下载mysql接口介绍workbench连接库下载要想用C语言连接mysql我们需要从mysql官网下载mysql提供的连接库选择C API然后选择MySQL Connector/C 8.0最后挑选自己的配置即可。如果我们一开始使用yum源安装的话他已经自动帮我们安装了连接库了无需手动安装。我们还可以用apt包直接下载sudoaptupdatesudoaptinstalllibmysqlclient-dev最后我们可以检测是否存在mysql.hzhangwhoVM-0-2-ubuntu:~$find/usr -namemysql.h/usr/include/mysql/mysql.hmysql接口介绍我们可以用官网获取详细的接口介绍。那么我们先介绍一些简单的接口首先要初始化mysql_init()可以看到其返回MYSQL*:然后就要连接MYSQL*mysql_real_connect(MYSQL*mysql,constchar*host,constchar*user,constchar*passwd,constchar*db,unsignedintport,constchar*unix_socunsignedlongclientflag);为了便于测试我们先创建用于连接的用户和数据库mysqlcreatedatabaseconn;Query OK,1rowaffected(0.02sec)mysqluseconn;Databasechanged mysqlcreatetabletest(-idintprimarykeyauto_increment,-namevarchar(20)notnull,-agetinyintdefault18-);Query OK,0rowsaffected(0.04sec)mysqlgrantallonconn.*toconnlocalhost;Query OK,0rowsaffected(0.01sec)连接数据库后通过mysql_query调用mysqlintmysql_query(MYSQL*mysql,constchar*q);我们先简单连接一下#includeiostream#includemysql/mysql.hintmain(){MYSQL*mysqlmysql_init(nullptr);mysqlmysql_real_connect(mysql,localhost,conn,123456,conn,3306,nullptr,0);if(mysqlnullptr)std::cerrmysql connect errot\n;mysql_close(mysql);return0;}当然这样不能有什么效果我们故意将密码写错zhangwhoVM-0-2-ubuntu:~/Trainning/2026_1_29$ ./test mysql connect error很好接下里我们尝试插入数据#includeiostream#includemysql/mysql.hintmain(){MYSQL*mysqlmysql_init(nullptr);mysqlmysql_real_connect(mysql,localhost,conn,123456,conn,3306,nullptr,0);if(mysqlnullptr){std::cerrmysql connect error\n;return1;}if(mysql_query(mysql,insert into test(name) values(Alice)))std::cerrmysql query error\n;elsestd::coutmysql query success\n;mysql_close(mysql);return0;}没问题。继续插入if(mysql_query(mysql,insert into test(name) values(张三)))也没问题说明我们的编码格式适配的很好。那么我们尝试selectif(mysql_query(mysql,select * from test))std::cerrmysql query error\n;elsestd::coutmysql query success\n;zhangwhoVM-0-2-ubuntu:~/Trainning/2026_1_29$ ./test mysql query success成功是成功了但是没有什么结果啊我们还需要其他接口MYSQL_RES*mysql_store_result(MYSQL*mysql);该函数会调用MYSQL变量中的st_mysql_methods中的 read_rows 函数指针来获取查询的结果。同时该函数会返回MYSQL_RES 这样一个变量该变量主要用于保存查询的结果。同时该函数malloc了一片内存空间来存储查询过来的数据所以我们一定要记的 free(result),不然是肯定会造成内存泄漏的。 执行完mysql_store_result以后其实数据都已经在MYSQL_RES 变量中了下面的api基本就是读取MYSQL_RES 中的数据。我们可以看到MYSQL_RES的结构此外还能通过接口直接获取MYSQL_RES的数据获取结果行数mysql_num_rowsmy_ulonglongmysql_num_rows(MYSQL_RES*res);获取结果列数mysql_num_fieldsunsignedintmysql_num_fields(MYSQL_RES*res);获取列名mysql_fetch_fieldsMYSQL_FIELD*mysql_fetch_fields(MYSQL_RES*res);获取结果内容mysql_fetch_rowMYSQL_ROWmysql_fetch_row(MYSQL_RES*result);最后释放MYSQL_RESvoidmysql_free_result(MYSQL_RES*result);那么接下来我们就可以如此操作//获取列名for(inti0;icol;i){std::coutfiled[i].name\t;}std::coutstd::endl;//获取内容MYSQL_ROW line;for(inti0;irow;i){linemysql_fetch_row(res);for(intj0;jcol;j){std::coutline[j]\t;}std::coutstd::endl;}mysql_free_result(res);输出zhangwhoVM-0-2-ubuntu:~/Trainning/2026_1_29$ ./test mysql query successidname age1Alice182张三18没有问题workbenchworkbench是mysql官网提供的图形化界面我们可以在win上下载workbench当然同时要先下载mysql。如果不想两个分开下载我们可以下载MySQL Installer选择下面的安装包然后选择Full即可。在等待下载的这段时间我们可以将conn的登录主机改为%:mysqlupdateusersetHost%whereuserconn;Query OK,1rowaffected(0.01sec)Rowsmatched:1Changed:1Warnings:0mysqlselecthost,user,authentication_stringfromuser;-----------------------------------------------------------------------------------------------------|host|user|authentication_string|-----------------------------------------------------------------------------------------------------|%|conn|$A$005$ounF%\r~f~%53Hmgs258v3VDpbsTfYTu4gyTbyCDhGIsJpwUgjKM.k6B8||localhost|mysql.infoschema|$A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED||localhost|mysql.session|$A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED||localhost|mysql.sys|$A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED||localhost|root|$A$005$c3OCZ*kw6s4#r)oD1TOBStybtxtwaEeZ1KfZ9mbVFiR4LD3x/1vxhtrnD |-----------------------------------------------------------------------------------------------------5rowsinset(0.00sec)当然这样修改是不足的还需要对一些权限进行修改。最好就是删除了重新创建用户。随后我们使用这个账户继续进行测试.选择添加新的连接如此我们就能对数据库进行操作我们能直接在图形界面写入数据然后点击右下角的apply他就会自动写入相应的sql语句。总之就是这样

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询