项目:点餐系统3mysql知识回顾MySQL客户端

news2024/11/20 12:20:42

 连接数据库

mysql -uroot -p

密码:空

一、第三方库:MySQL

数据库-存储并管理数据的仓库,是一个C/S架构

MySQL客户端通过sql来告诉MySQL服务器,自己需要做什么操作

1.sql语句

sql:structure query language结构化查询语言

sql语句应该以英文封号作为结尾

sql语句不区分大小写

sql语句尽量避免使用关键字作为库或者表或者字段的名称

1.1库的操作

创建:create database ct;

查看所有库:show databases;

选择操作的库:use ct;

查看当前所选操作的库:select database();

删除库:delete database ct;

1.2MySQL中的数据类型

int整型

decimal(M,D)浮点型

varchar(len)字符串类型

datatime日期类型

1.3表的操作

创建:create table student(sn int , name varcher(32) , age int );

查看库中所有表:show tables;

查看表结构:desc student;

删除表:drop table student;

1.4表中数据的操作

新增:

insert student values(1,"张三",18);

数据位置一定跟表中字段一致,不能错位或缺少

查询:

全字段查询:select * from student;

指定字段查询:select sn , name from student;

条件查询:select *from student where name = "张三";

修改:

注意:修改的时候一定要设置过滤条件,否则针对的是表中的所有元素

update student set name = "李四" where name = "张三";

删除:

delete from student where name = "张三";

二、MySQL客户端

主要了解的是MySQL开发包中的api接口

1.初始化MySQL操作句柄

MYSQL *mysql_init(MYSQL *mysql);

对传入的句柄进行初始化

若传入的句柄为NULL,则内部会动态申请空间,进行初始化,并返回句柄首地址

返回值:若失败则返回NULL

2.连接MySQL服务器

MYSQL *mysql_real_connect(MYSQL *mysql, char *host , char *user , char *pass , char *dbname, int port , char *unix_socket , int client_flag)

mysql:初始化完成的mysql句柄

host:用户名

pass:密码

dbname:要操作的库名称

port:端口,默认0为3306端口,是mysql服务的端口

unix_socket:套接字或管道文件名-通常置NULL

client_flag:客户端的操作标志,通常置0

返回值:成功返回句柄首地址,失败返回NULL

3.设置客户端字符集(通常与服务器保持一致,使用utf8)

int mysql_set_character_set(MYSQL *mysql , char * name);

mysql:操作句柄

name:字符集名称,通常是“utf8”

返回值:成功返回0;失败返回非0

4.选择要操作的数据库(切换操作的库)

int mysql_select_db(MYSQL *mysql , char * dbname);

5.将sql语句发送给服务器,并执行sql语句

int mysql_query(MYSQL *mysql , char * sql);

mysql:操作句柄

sql:对数据库中的数据进行的操作的sql语句

返回值:成功返回0;失败返回非0

语句有没有执行成功,决定了当前的操作是否完成

6.查找操作

因为增删改只要语句执行成功就OK,但是如果是查询语句,因为查询的话语成功执行,还需要获取查询的结果。

6.1将查询的结果保存到本地

MYSQL_RES *mysql_store_result(MYSQL * mysql);

mysql:操作句柄

返回值:成功返回结果集的首地址;失败返回NULL

将结果集保存到本地与执行语句这一步操作,如果使用的是一个操作句柄就会发生线程安全问题

6.2获取结果集的行数和列数

int mysql_num_rows(MYSQL_RES *res);//获取结果行数

int mysql_num_fields(MYSQL_RES *res);//获取结果列数

6.3遍历结果集,逐条取出数据

MYSQL_ROW mysql_fetch_row(MYSQL_RES *res);

这个函数或者说res内部记录了当前的读写位置,只需要不断的调用,就可以逐条取出数据。

这个返回值是给字符指针数组char *arr[] ,将一行中的多列进行扁平化存储,每一个元素都是一列数据。

6.4释放结果集

int mysql_free_result(MYSQL_RES *res);

7.关闭客户端连接,释放句柄

int mysql_close(MYSQL *mysql);2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/945668.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode 44题:通配符匹配

题目 给你一个输入字符串 (s) 和一个字符模式 (p) ,请你实现一个支持 ? 和 * 匹配规则的通配符匹配: ? 可以匹配任何单个字符。* 可以匹配任意字符序列(包括空字符序列)。 判定匹配成功的充要条件是:字符模式必须…

AI识别工人安全绳佩戴检测算法

AI识别工人安全绳佩戴检测算法通过yolov5智能图像识别算法对现场图像进行处理和分析,AI识别工人安全绳佩戴检测算法识别出工人是否佩戴安全绳,一旦发现工人未佩戴安全绳,AI识别工人安全绳佩戴检测算法将立即进行告警,并将事件记录…

SOLIDWORKS中多实体文件到装配体的转换技巧

我们在做机械等工程设计中,有时为了节省时间,需要把多实体的“零件”,直接转换为装配体,不再另外装配,这样能大大简化设计的操作时间,复杂程度。 在这里,我们首先要了解,SOLIDWORKS文…

2023常见前端面试题

以下是一些2023年秋招常见的前端面试题及其答案: 1. 请解释一下什么是前端开发? 前端开发是指使用HTML、CSS和JavaScript等技术来构建网页和用户界面的过程。前端开发人员负责将设计师提供的视觉设计转化为可交互的网页,并确保网页在不同设备…

【活体检测模型】活体检测思路推演

ref:https://arxiv.org/pdf/1611.05431.pdf https://github.com/miraclewkf/ResNeXt-PyTorch 用分类的思想做活体检测,要求准确的分出正负样本,否则,支付宝被别人用了,问题就很严重。 大部分的商用场景还是 摇摇头、张张口&#x…

Android——基本控件(下)(二十)

1. 树型组件:ExpandableListView 1.1 知识点 (1)掌握树型组件的定义; (2)可以使用事件对树操作进行监听。 2. 具体内容 既然这个组件可以完成列表的功能,肯定就需要一个可以操作的数据&…

Java集合sort排序报错UnsupportedOperationException处理

文章目录 报错场景排查解决UnmodifiableList类介绍 报错场景 我们使用的是PostgreSQL数据库,存储业务数据,业务代码使用的是Spring JPA我们做的是智慧交通信控平台,有个功能是查询展示区域的交通态势,需要按照不同维度排序展示区…

pngPacker与TexturePacker打包对比,手把手教你使用pngPacker

pngPacker与TexturePacker打包对比,手把手教你使用pngPacker打包出媲美texturepacker的效果 pngPacker是一款免费的图片打包工具,软件小巧易用,主流游戏图片格式,如 bmp,jpg,png 可以打包为 png 大图,采用命令行格,前一…

数字乡镇综合解决方案PPT

导读:原文《数字乡镇综合解决方案PPT》(获取来源见文尾),本文精选其中精华及架构部分,逻辑清晰、内容完整,为快速形成售前方案提供参考。 部分内容: 喜欢文章,您可以关注评论转发本…

网络编程 http 相关基础概念

文章目录 表单是什么http请求是什么http请求的结构和说明关于http方法 GET和POST区别http常见状态码http响应http 请求是无状态的含义html是什么 (前端内容,了解即可)html 常见标签 (前端内容,了解即可)关于…

哇塞不!赛博时代云上自动化辅导孩子学习。

背景 孩子天天上网看动画片,都幼儿园大班了还不会100以内的加减法,因为我平时还需要忙着工作不能天天陪着孩子。 这次我们整个活,让孩子每天心甘情愿的做100道题。而且电脑还要给孩子一些提醒,即使做错了也会不厌其烦的给孩子提示…

图像颜色空间转换

目录 1.图像颜色空间介绍 RGB 颜色空间 2.HSV 颜色空间 3.RGBA 颜色空间 2.图像数据类型间的互相转换convertTo() 3.不同颜色空间互相转换cvtColor() 4.Android JNI demo 1.图像颜色空间介绍 RGB 颜色空间 RGB 颜色空间是最常见的颜色表示方式之一,其中 R、…

【C++】—— 异常处理

前言: 本期,我将给大家讲解的是有关 异常处理 的相关知识! 目录 (一)C语言传统的处理错误的方式 (二)C异常概念 (三)异常的使用 1、异常的抛出和捕获 1️⃣ 异常的…

Windows Qt 5.12.10下载与安装

Qt 入门实战教程(目录) C自学精简实践教程 目录(必读) 1 Qt5.12.10下载 qt-opensource-windows-x86-5.12.10.exe 官方离线安装包 Download Source Package Offline Installers | Qt 下载巨慢(也可能很快) 只能下载到最新的&…

C语言——类型转换

数据有不同的类型,不同类型数据之间进行混合运算时涉及到类型的转换问题。 转换的方法有两种: 自动转换(隐式转换):遵循一定的规则,由编译系统自动完成强制类型转换:把表达式的运算结果强制转换成所需的数据类型 语法格…

自动化测试(三):接口自动化pytest测试框架

文章目录 1. 接口自动化的实现2. 知识要点及实践2.1 requests.post传递的参数本质2.2 pytest单元测试框架2.2.1 pytest框架简介2.2.2 pytest装饰器2.2.3 断言、allure测试报告2.2.4 接口关联、封装改进YAML动态传参(热加载) 2.3 pytest接口封装&#xff…

20 MySQL(下)

文章目录 视图视图是什么定义视图查看视图删除视图视图的作用 事务事务的使用 索引查询索引创建索引删除索引聚集索引和非聚集索引影响 账户管理(了解非DBA)授予权限 与 账户的相关操作 MySQL的主从配置 视图 视图是什么 通俗的讲,视图就是…

编绎和优化,脚本代码小米加步枪赶超英法美

编程达人:冰冻牡蛎 测试,总结》》 今有空,继续看了一下竹笋大师几天前提出的“使用for循环查找10亿内可被7整除的数的个数”的题目(相关文件:群文件 10亿以内多少个数字可以整除7.7z ) 1. 论输出的exe大小…

Pytorch-以数字识别更好地入门深度学习

目录 一、数据介绍 二、下载数据 三、可视化数据 四、模型构建 五、模型训练 六、模型预测 一、数据介绍 MNIST数据集是深度学习入门的经典案例,因为它具有以下优点: 1. 数据量小,计算速度快。MNIST数据集包含60000个训练样本和1000…

Java实现根据商品ID获取1688商品详情跨境属性数据,1688商品重量数据接口,1688API接口封装方法

要通过1688的API获取商品详情跨境属性数据,您可以使用1688开放平台提供的接口来实现。以下是一种使用Java编程语言实现的示例,展示如何通过1688开放平台API获取商品详情属性数据接口: 首先,确保您已注册成为1688开放平台的开发者…