C++利用MysqlAPI连接数据库

数据库相关API连接

1、为工程附加目录,将MySQL Server xx/include文件添加,我这是VS2015
在这里插入图片描述
然后再将MySQL Server xx/lib下的libmysql.dll和libmysql.lib复制到我们工程项目文件下
在这里插入图片描述

连接所需要的头文件和库
#include <winsock.h>        //注意这两个头文件的次序不能放错
#include "mysql.h"

#pragma comment(lib,"libmysql.lib")
连接数据库
#include <winsock.h>
#include "mysql.h"

#pragma comment(lib,"libmysql.lib")

int main()
{
    MYSQL m_sqlConnect;       //数据源指针
    mysql_init(&m_sqlConnect);
    /*   主机IP
         用户
         密码
         数据库
         端口
         套接字
         客户端标识
         无
    */
    if(!mysql_real_connect(&m_sqlConnect,"localhost""root","asfd21","mysql",3306,NULL,0)
    return false;
    ...
    ...
    mysql_close(&m_sqlConnect);  //关闭数据库
}
附加一些从其他博客看到常用的API接口:
mysql_affected_rows() 返回被最新的UPDATE, DELETE或INSERT查询影响的行数。  
mysql_close() 关闭一个服务器连接。  
mysql_connect() 连接一个MySQL服务器。该函数不推荐;使用mysql_real_connect()代替。  
mysql_change_user() 改变在一个打开的连接上的用户和数据库。  
mysql_create_db() 创建一个数据库。该函数不推荐;而使用SQL命令CREATE DATABASE。  
mysql_data_seek() 在一个查询结果集合中搜寻一任意行。  
mysql_debug() 用给定字符串做一个DBUG_PUSH。  
mysql_drop_db() 抛弃一个数据库。该函数不推荐;而使用SQL命令DROP DATABASE。  
mysql_dump_debug_info() 让服务器将调试信息写入日志文件。  
mysql_eof() 确定是否已经读到一个结果集合的最后一行。这功能被反对; mysql_errno()mysql_error()可以相反被使用。  
mysql_errno() 返回最近被调用的MySQL函数的出错编号。  
mysql_error() 返回最近被调用的MySQL函数的出错消息。  
mysql_escape_string() 用在SQL语句中的字符串的转义特殊字符。  
mysql_fetch_field() 返回下一个表字段的类型。  
mysql_fetch_field_direct () 返回一个表字段的类型,给出一个字段编号。  
mysql_fetch_fields() 返回一个所有字段结构的数组。  
mysql_fetch_lengths() 返回当前行中所有列的长度。  
mysql_fetch_row() 从结果集合中取得下一行。  
mysql_field_seek() 把列光标放在一个指定的列上。  
mysql_field_count() 返回最近查询的结果列的数量。  
mysql_field_tell() 返回用于最后一个mysql_fetch_field()的字段光标的位置。  
mysql_free_result() 释放一个结果集合使用的内存。  
mysql_get_client_info() 返回客户版本信息。  
mysql_get_host_info() 返回一个描述连接的字符串。  
mysql_get_proto_info() 返回连接使用的协议版本。  
mysql_get_server_info() 返回服务器版本号。  
mysql_info() 返回关于最近执行得查询的信息。  
mysql_init() 获得或初始化一个MYSQL结构。  
mysql_insert_id() 返回有前一个查询为一个AUTO_INCREMENT列生成的ID。  
mysql_kill() 杀死一个给定的线程。  
mysql_list_dbs() 返回匹配一个简单的正则表达式的数据库名。  
mysql_list_fields() 返回匹配一个简单的正则表达式的列名。  
mysql_list_processes() 返回当前服务器线程的一张表。  
mysql_list_tables() 返回匹配一个简单的正则表达式的表名。  
mysql_num_fields() 返回一个结果集合重的列的数量。  
mysql_num_rows() 返回一个结果集合中的行的数量。  
mysql_options() 设置对mysql_connect()的连接选项。  
mysql_ping() 检查对服务器的连接是否正在工作,必要时重新连接。  
mysql_query() 执行指定为一个空结尾的字符串的SQL查询。  
mysql_real_connect() 连接一个MySQL服务器。  
mysql_real_query() 执行指定为带计数的字符串的SQL查询。  
mysql_reload() 告诉服务器重装授权表。  
mysql_row_seek() 搜索在结果集合中的行,使用从mysql_row_tell()返回的值。  
mysql_row_tell() 返回行光标位置。  
mysql_select_db() 连接一个数据库。  
mysql_shutdown() 关掉数据库服务器。  
mysql_stat() 返回作为字符串的服务器状态。  
mysql_store_result() 检索一个完整的结果集合给客户。  
mysql_thread_id() 返回当前线程的ID。  
mysql_use_result() 初始化一个一行一行地结果集合的检索。 

转载自:https://blog.csdn.net/qq_33248019/article/details/78904751

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些C++连接MySQL API编写增删改查的代码示例。 首先,您需要安装MySQL C++ Connector,这是一个在C++中连接MySQL数据库的API。在安装完成后,您需要在您的项目中包含MySQL的头文件和库文件。下面是一个基本的连接MySQL的C++代码示例: ```cpp #include <mysqlx/xdevapi.h> using namespace mysqlx; int main(){ Session session("localhost", 33060, "username", "password"); Schema db = session.getSchema("databasename"); // your code here... session.close(); return 0; } ``` 下面是一些基本的MySQL C++ Connector API函数: 1. 增加数据: ```cpp Table myTable = db.getTable("table_name"); Row row = myTable.insert("column1", "column2", "column3") .values("value1", "value2", "value3") .execute(); ``` 2. 删除数据: ```cpp Table myTable = db.getTable("table_name"); myTable.remove().where("column1 = :1 AND column2 = :2") .bind("value1").bind("value2").execute(); ``` 3. 更新数据: ```cpp Table myTable = db.getTable("table_name"); myTable.update().set("column1", "new_value1").set("column2", "new_value2") .where("column3 = :1").bind("value3").execute(); ``` 4. 查询数据: ```cpp Table myTable = db.getTable("table_name"); Result result = myTable.select("column1", "column2", "column3") .where("column1 = :1").bind("value1").execute(); for (auto row : result){ std::cout << row[0] << " " << row[1] << " " << row[2] << std::endl; } ``` 以上是一个基本的C++连接MySQL API编写增删改查的示例,您可以根据自己的需要进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值