vscode中使用C++实现mysql数据库编程(附带相关案例)

windows下vscode连接Linux中的MySQL教程见:https://blog.csdn.net/weixin_47156401/article/details/129469835?spm=1001.2014.3001.5501

分布式数据库,顾名思义:分布式+数据库。用一句话总结为:由多个独立实体组成,并且彼此通过网络进行互联的数据库。

使用vscode连接Linux中的mysql,并进行mysql开发,对于初学者来讲多少有些摸不着头脑,下面给出mysql的建库、建表,以及增、删、改、查等基本操作。

一、代码解读

(1)主函数

#include
#include
#include
#include
#include

using namespace std;

MYSQL mysql;            //mysql连接
MYSQL_FIELD*fd;         //字段列数组
char field[32][32];     //存字段名二维数组
MYSQL_RES *res;         //这个结构代表返回行的一个查询结果集
MYSQL_ROW column;       //一个行数据的类型安全(type-safe)的表示,表示数据行的列

bool ConnectDatabase(); //函数声明
void FreeConnect();
bool InsertData();      //增
bool ModifyData();      //改
bool DeleteData();      //删


int main(){
    ConnectDatabase();
    InsertData();
    ModifyData();
    DeleteData();
    mysql_close(&mysql);
    return 0;
}

(2)连接Linux中的mysql并进行创建库(my_database)、表(my_table)操作

//连接mysql并创建库和表
bool ConnectDatabase(){
    //初始化mysql连接
    mysql_init(&mysql);                 //等价于&mysql=mysql_init(NULL);

    const char host[]="localhost";
    const char user[]="root";
    const char psw[]="123456";
    //const char table[]="test";        //需要链接的数据库,如果已经创建了直接连接即可

    const int port =3306;

    //返回false则连接失败,返回true则连接成功
    if(!mysql_real_connect(&mysql, host, user, psw, NULL, port, NULL,0))
    {
        //中间分别是主机,用户名,密码,数据库名,端口号(可以写默认0或者3306等),可以先写成参数再传进去
        cout<<"Error connecting to database:"<

(3)往表(my_table)中插入数据

//插入数据
bool InsertData(){

    //插入数据
    string query="INSERT INTO my_table (id, name, number, email) VALUES (1, 'liubei', '33333333', '[email protected]')";
    
    //执行SQL语句
    if(mysql_query(&mysql, query.c_str())){
        cout<<"数据插入失败!"<

(4)修改表(my_table)中的数据

//修改数据
bool ModifyData(){
    //修改内容
    string query="UPDATE my_table SET email='[email protected]' where name='liubei'";

    //执行SQL语句
    if(mysql_query(&mysql, query.c_str())){
        cout<<"修改数据失败!"<

(5)删除表(my_table)中的指定数据

//删除数据
bool DeleteData(){
    /*eg: "DELETE FROM my_table where id=2";*/
    string query="DELETE FROM my_table where id=2";
    cout<<"please input the sql:"<

(6)释放资源

//释放资源
void FreeConnect(){
    mysql_free_result(res);     //释放一个结果集合使用的内存。
    mysql_close(&mysql);        //关闭一个服务器连接。
}

二、完整代码

#include
#include
#include
#include
#include

using namespace std;

MYSQL mysql;            //mysql连接
MYSQL_FIELD*fd;         //字段列数组
char field[32][32];     //存字段名二维数组
MYSQL_RES *res;         //这个结构代表返回行的一个查询结果集
MYSQL_ROW column;       //一个行数据的类型安全(type-safe)的表示,表示数据行的列

bool ConnectDatabase(); //函数声明
void FreeConnect();
bool InsertData();      //增
bool ModifyData();      //改
bool DeleteData();      //删


int main(){
    ConnectDatabase();
    InsertData();
    ModifyData();
    DeleteData();

    mysql_close(&mysql);
    return 0;
}

//连接mysql并创建库和表
bool ConnectDatabase(){
    //初始化mysql连接
    mysql_init(&mysql);                 //等价于&mysql=mysql_init(NULL);

    const char host[]="localhost";
    const char user[]="root";
    const char psw[]="123456";
    //const char table[]="test";        //需要链接的数据库,如果已经创建了直接连接即可

    const int port =3306;

    //返回false则连接失败,返回true则连接成功
    if(!mysql_real_connect(&mysql, host, user, psw, NULL, port, NULL,0))
    {
        //中间分别是主机,用户名,密码,数据库名,端口号(可以写默认0或者3306等),可以先写成参数再传进去
        cout<<"Error connecting to database:"<

若有帮到你,点个赞,留下你的脚印哦!

你可能感兴趣的:(Linux,操作系统,c++基础,c++,linux,mysql)