Linux C++ 链接数据库并对数据库进行一些简单的操作
一.引言(写在之前)
在我们进行网络业务代码书写的时候,我们总是避免对产生的数据进行增删改查,为此,本小博主在这里简历分享一下自己在Linux中C++语言与数据之间交互的代码的入门介绍。
二.代码书写以及一些变量和函数的简单应用
1.头文件的引入
#include <mysql/mysql.h>
包含了连接数据库的头文件和库文件
2.一些函数和变量的介绍
MYSQL 数据库链接句柄
mysql_init(MYSQL* mysql) 用来初始化数据库连接句柄,需要传入一个句柄并返回一个指向句柄的指针
mysql_real_connect(连接句柄,用户名,密码,数据库名称,端口(0表示默认端口,即3303),一般给NULL,一般也给NULL);
mysql_close(MYSQL*mysql);表示关闭连接
mysql_query(MYSQL *mysql,char* sql) 表示执行sql语句,char* sql即要执行的sql语句
MYSQL_RES *mysql_store_result(MYSQL *mysql);返回一个指向返回结果集的指针。
uint64_t mysql_num_rows(MYSQL_RES *res); 表示返回的数据个数即行数
unsigned int mysql_field_count(MYSQL *mysql);查看当前行数
三.附上我自己的测试代码吧(大家不可以照抄熬,数据库名字和表的结构不一样会导致大家出错,也可以call me maybe)
#include <mysql/mysql.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
int main() {MYSQL mysql_con;MYSQL *mysql = mysql_init(&mysql_con);if (mysql == &mysql_con) {printf("hahahhahahah\n");}//打印此玩意,就证明mysql_init与mysql_con是一个玩意if (mysql == NULL) {printf("mysql init failed\n");exit(1);}//打印这行说明初始化失败,如果是自己写的代码的话。检查连接句柄是不是有问题或者是不是忘记初始化了mysql = mysql_real_connect(mysql, "localhost", "root", "wsx962464", "c220x",3306, NULL, 0);//localhost可以换成127.0.0.1,这一行千万不可以照抄,数据库名字啥的都不一样if (mysql == NULL) {printf("连接失败\n");exit(1);}printf("连接成功\n");char *sql = "insert into student values(3,'zzj',55)";int quert_res = mysql_query(mysql, sql);if (quert_res == 0) {printf("执行成功\n");exit(1);} else {printf("执行失败\n");}mysql_close(mysql);return 0;
}
四.last but not least
最后在命令太进行编译的时候,千万千万不要忘记加库名如下:
![]()
最后加上-lmysqlclient(哪个标志挡住了,可能看不到)
相关文章:
Linux C++ 链接数据库并对数据库进行一些简单的操作
一.引言(写在之前) 在我们进行网络业务代码书写的时候,我们总是避免对产生的数据进行增删改查,为此,本小博主在这里简历分享一下自己在Linux中C语言与数据之间交互的代码的入门介绍。 二.代码书写以及一些变量和函数的…...
Linux进程间通信--msgsnd函数的作用
msgsnd函数用于将消息发送到消息队列中。它的原型如下: int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); 参数解释: msqid:消息队列标识符,由msgget函数返回。msgp:指向要发送的消息的指针&…...
P1629 邮递员送信(最短路)(内附封面)
邮递员送信 题目描述 有一个邮递员要送东西,邮局在节点 1 1 1。他总共要送 n − 1 n-1 n−1 样东西,其目的地分别是节点 2 2 2 到节点 n n n。由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有 m m m 条道路。这…...
网络安全--原型链污染
目录 1.什么是原型链污染 2.原型链三属性 1)prototype 2)constructor 3)__proto__ 4)原型链三属性之间关系 3.JavaScript原型链继承 1)分析 2)总结 3)运行结果 4.原型链污染简单实验 1)实验一 2࿰…...
Harbor企业镜像仓库部署
目录 一、Harbor 架构构成 二、部署harbor环境 1、安装docker-ce(所有主机) 2、阿里云镜像加速器 3、部署Docker Compose 服务 4、部署 Harbor 服务 5、启动并安装 Harbor 6、创建一个新项目 三、客户端上传镜像 1、在 Docker 客户端配置操作如下…...
【AI】《动手学-深度学习-PyTorch版》笔记(十一):分类问题-softmax回归
AI学习目录汇总 1、线性回归和softmax回归的区别 1)连续值与离散值 线性回归模型,适用于输出为连续值的情景。 softmax回归模型,适用于输出为离散值的情景。例如图像类别,就需要对离散值进行预测。softmax回归模型引入了softmax运算,使输出更适合离散值的预测和训练。 …...
【排序算法略解】(十种排序的稳定性,时间复杂度以及实现思想)(含代码)(完工于2023.8.3)
文章目录 1、冒泡排序/选择排序/插入排序冒泡排序(Bubble Sort)选择排序(Selection Sort)插入排序(Insertion Sort) 2、希尔排序(Shells Sort)3、快速排序(Quick Sort)4、堆排序(Heap Sort)5、归并排序(Merge Sort)6、桶排序/计数排序/基数排序桶排序(Bucket sort)计数排序(Cou…...
学编程实用网站
牛客网:面试刷题和面试经验分享的网站牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网 (nowcoder.com)https://www.nowcoder.com/ 慕课网:在线学习 慕课网-程序员的梦工厂 (imooc.com)https://www.imooc.com/ …...
Camunda 7.x 系列【5】 员工请假流程模型
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 2.7.9 本系列Camunda 版本 7.19.0 源码地址:https://gitee.com/pearl-organization/camunda-study-demo 文章目录 1. 概述2. 模型设计2.1 基础配置2.2 启动事件2.3 填写请假单2.4 上级领导审批3.5 经理审批3…...
【C++从0到王者】第十七站:手把手教你写一个stack和queue及deque的底层原理
文章目录 一、stack1.利用适配器2.栈的实现 二、queue三、deque1.deque介绍2.deque的接口3.deque的基本使用4.deque的效率5.deque的原理 一、stack 1.利用适配器 我们不可能写了一份数组栈以后,还要在手写一个链式栈,这样显得太冗余了。于是我们可以利…...
ffmpeg.c源码与函数关系分析
介绍 FFmpeg 是一个可以处理音视频的软件,功能非常强大,主要包括,编解码转换,封装格式转换,滤镜特效。FFmpeg支持各种网络协议,支持 RTMP ,RTSP,HLS 等高层协议的推拉流,…...
GD32F103待机模式与唤醒
GD32F103待机模式与唤醒,本程序使用RTC报警唤醒。 电源管理单元有3种省电模式:睡眠模式,深度睡眠模式和待机模式; 进入待机模式的步骤如下: 若需要RTC闹钟输出,则需要将TAMPER-RTC映射到PC13引脚; 若需要LXTAL晶振32.768KHz&…...
【Linux初阶】基础IO - 动静态库 | 初识、生成、链接、加载
🌟hello,各位读者大大们你们好呀🌟 🍭🍭系列专栏:【Linux初阶】 ✒️✒️本篇内容:动静态库初识,库的含义,静态库的生成与链接,gcc/g默认链接方式,…...
为Git仓库设置签名信息
前言 在首次使用git版本库或创建新的仓库时,需要为其仓库设定管理员和管理员邮箱。 在为仓库添加管理员和邮箱地址时,有以下两种情况: (1)全局模式:首次创建,后面做为默认使用,对当…...
iOS开发Swift开发UI页面链式调用库推荐
首页链接 https://github.com/zhiguangqiao/ChainableUIKit 安装方法 pod ChainableUIKit调用片段 UIButton import ChainableUIKitprivate let button UIButton().chain.setTitleColor(.init(hex: "#9583EB"), state: .normal).setTitle("全部视频",…...
ClickHouse SQL与引擎--基本使用(一)
1.查看所有的数据库 show databases; 2.创建库 CREATE DATABASE zabbix ENGINE Ordinary; ATTACH DATABASE ck_test ENGINE Ordinary;3.创建本地表 CREATE TABLE IF NOT EXISTS test01(id UInt64,name String,time UInt64,age UInt8,flag UInt8 ) ENGINE MergeTree PARTI…...
2023-08-07力扣今日七题-好题
链接: 剑指 Offer 11. 旋转数组的最小数字 154. 寻找旋转排序数组中的最小值 II 题意: 找一个数组里的最小值,这个数组是有非递减数组旋转而来的,旋转n次表示把前n个数移动到数组末尾 解: 很有趣的二分ÿ…...
支持多用户协同的思维导图TeamMapper
什么是 TeamMapper ? TeamMapper 是基于 Mindmapp 开发的用于绘制思维导图的 Web 应用程序。它使得思维导图变得简单,你可以托管并创建您自己的思维导图。与您的团队分享您的思维导图会议并在思维导图上进行协作。 软件特点: 创建࿱…...
【Vue】Parsing error: No Babel config file detected for ... vue
报错 Parsing error: No Babel config file detected for E:\Study\Vue网站\实现防篡改的水印\demo02\src\App.vue. Either disable config file checking with requireConfigFile: false, or configure Babel so that it can find the config files. …...
2023-08-07力扣今日五题
链接: 剑指 Offer 53 - II. 0~n-1中缺失的数字 题意: 如题 解: 长度n的递增数组里,要找0到n中没出现的那个数字,那么出现的下标是0到n-1,一一对应即可,都出现了就是n没有 实际…...
python bz2
# Python 与 bz2:不只是个压缩工具 在 Python 的标准库里,藏着不少像 bz2 这样不太起眼但相当实用的模块。第一次接触它的时候,可能觉得这不过是个压缩解压的工具,但用久了会发现,它在数据处理流程中扮演的角色远比想象…...
一篇文章带你了解 HTTP协议 !!!
引言在 Web 开发体系中,HTTP 协议作为前后端数据交互的核心规范,定义了请求与响应的标准格式,是实现浏览器与服务器通信的基础;而 TCP 协议则为 HTTP 提供了可靠的传输保障,确保数据完整有序传输。本文带你了解一下HTT…...
如何快速上手BiliTools:2026年最全哔哩哔哩工具箱使用指南
如何快速上手BiliTools:2026年最全哔哩哔哩工具箱使用指南 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …...
用Chord做短视频分析:自动生成视频描述,提升内容运营效率
用Chord做短视频分析:自动生成视频描述,提升内容运营效率 1. 短视频运营的痛点:内容爆炸与人力瓶颈 每天打开短视频平台的后台,运营同学是不是经常感到一阵窒息?几十条、上百条视频素材堆在那里,等着你一…...
7个核心维度构建企业级权限系统:从设计到落地的完整路径
7个核心维度构建企业级权限系统:从设计到落地的完整路径 【免费下载链接】react Reactwebpackreduxant designaxiosless全家桶后台管理框架 项目地址: https://gitcode.com/gh_mirrors/reac/react 在数字化转型加速的今天,企业级应用面临着日益复…...
避免任务饿死:QP/C框架下优先级调度的5个最佳实践
避免任务饿死:QP/C框架下优先级调度的5个最佳实践 在嵌入式系统开发中,任务调度效率直接影响系统性能和响应能力。QP/C框架作为事件驱动开发的利器,其优先级抢占机制在保证实时性的同时,也可能导致低优先级任务长期无法获得CPU资源…...
实战应用全流程:基于快马平台从零到一构建并部署龙虾openclaw官网
实战应用全流程:基于快马平台从零到一构建并部署龙虾openclaw官网 最近在做一个AI工具库的开源项目,需要搭建一个展示官网。作为独立开发者,从零开始构建一个完整的官网涉及很多环节,幸好发现了InsCode(快马)平台,帮我…...
BilibiliDown:3分钟学会B站视频下载,从此告别缓冲卡顿
BilibiliDown:3分钟学会B站视频下载,从此告别缓冲卡顿 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/g…...
基于C++、OpenCV与VS2015环境的HOG+SVM行人检测全套项目:含正负样本数据集、...
C,OpenCV,VS2015,HOGSVM行人检测项目一整套,具体包括以下内容: 1.行人检测数据集,正负样本 2.数据集准备,模型训练,模型测试,视频测试和图片测试 3.界面,使用Qt搭建可视化…...
L1与L2正则化:从稀疏解到平滑解的实战选择指南
1. 正则化:机器学习中的"防过拟合神器" 第一次听说正则化这个词时,我以为是某种数学上的正规操作。直到在实战项目中遇到模型在训练集上表现完美、测试集却一塌糊涂的情况,才真正理解它的价值。简单来说,正则化就是给模…...
