【MySQL】—— MySQL表的增删改查(CRUD)

目录

前言

前提

一、新增

1. 单行插入

2. 指定列插入

3. 多行插入

4. 时间日期的插入

二、查询

1. 全列查询

2. 指定列查询

3. 表达式查询

4. 给查询结果设置别名

5. 对查询结果进行去重

6. 对查询结果进行排序

7. 条件查询

语法

比较运算符

条件运算符

案例

比较运算符

逻辑运算符

范围查询

模糊匹配

8. 分页查询

三、修改

四、删除

本文使用的数据表的创建代码


前言

上一篇关于MySQL的文章,我们介绍了关于数据库、数据表的一些基本操作。今天,我们开始学习关于数据表里的内容的一些操作,也就是我们常说的“增删改查”、“CRUD”。

CRUDCreate(新增)、Retrieve(查询)、Update(更新)、Delete(删除)

前提

在开始关于数据表内容的操作前,我们一定要保证已经选中了对应的数据库并且创建好了对应的数据表!!!

一、新增

1. 单行插入

语法:

        insert into 表名 values(列,列,列……);

括号里的列要和表定义时 个数、顺序、类型 保持一致

SQL中:字符串可以用单引号也可以用双引号

插入字符为中文,要确保数据库的字符集为utf-8

2. 指定列插入

语法:

        insert into 表名(指定列1,列2,…) values(值1,值2,… );

3. 多行插入

不指定列:

指定列:

可以看出,多行插入,只需要每一行的值之间用 “,”分隔开即可

当我们要一次性插入多个数据时:

一条sql语句插入多个数据的效率更高;多条语句,每条语句插入一个数据效率低

原因:

MySQL是客户端 - 服务器结构的程序,客户端和服务器之间使用网络进行通信

每执行一条sql语句,都会涉及客户端和服务器的交互和服务器对应的处理(检查语法、数据校验、对插入的数据的位置进行定位......)

一次性插入多个数据,虽然单次操作的消耗会多,但是网络开销、服务器开销都只有一次,更加高效并且效率差异明显。

题外话:

MySQL横向对比其他编程组件,执行效率更低,经常成为一个程序的性能短板,所以后续围绕MySQL有很多调优技巧

4. 时间日期的插入

简单写法:直接使用特定的格式化字符串表示时间:‘ 年 - 月 - 日  时:分:秒 ’

mysql会自动将其转换为 8个字节的时间戳(整数) 进行保存

查询时,也会将时间戳自动转换为格式化时间

插入当前时间

        now()函数——> 获取当前时间

二、查询

1. 全列查询

语法:

        select * from 表名;

“ * ” :被称为通配符

在未来的工作中,select * 这个操作很危险,如果当前数据量很大,全列查询会产生很大的硬盘IO和网络IO,可能会导致服务器无法响应~

当然也有对应的解决方式:给服务器配置多个网卡,一部分用于传输数据,另一部分用于传输控制命令

2. 指定列查询

语法:

        select  列名,列名,…  from 表名;

前言:      第一次发布,写的比较啰嗦,尽可能把所有功能都有描述清楚。     接触易以及有好几年了吧,这款工具算是自己真正意义上自己独立编写的。没啥技术难点,基本都是连接数据库,执行SQL,取记录集,然后展示在超级列 不过咋说也算是处女作,就发出来,给一些可能需要的朋友看一下。 初次用易码代码,可能有很多冗杂代码,请理解一下。 再说这款工具吧,就是一个简单的对数据库增删改查的操作。数据库记录一些基本信息(SQL在附件) 问题点:    1.有一个登录窗口和程序主界面,不知道为啥没连数据库前,加载皮肤的话,两窗口都能正常加载,连上数据库后就只有登录窗口有皮肤。研究一天没整明白就放弃了。    2.基本上每一个功能,我都用的一个数据库句柄,用完后就断开连接。不知道这样写是不是多余。也不知道咋测 未完成功能:    1.权限判断,有两张,用户和记录。用户就是登陆界面验证的,记录就是主程序用的。在用户有字段区分权限,不同的权限对于记录有不同的操作权限    2.在登陆窗口,把账号设置为全局变量,准备在加载主界面时调用,搞一个【欢迎:XXX】,结果主界面调用不到,就去掉了 基本操作功:   1.增加用户时,只需输入昵称,两个QQ以及备注即可。编号是自增列,两个时间自动获取当前时戳。  2.删除用户时,以游戏账号为条件。   3.修改用户时,以游戏账号为条件修改昵称,实际QQ以及次数和备注信息   4.查找用户时,分别以昵称和两个QQ作为条件查找。   5.查看详情时,展示加载一个新窗口展示全部信息。   6.使用的第三方模块,用于更新的。登录界面的公告也是模块后台管理自带的。(模块名:软件升级模块_2018k,好像是论坛的,忘了这个大佬的论坛名了。感谢大佬提供的模块)   7.双击列,弹出修改窗口,可修改用户信息   8.右键项,弹出菜单,功能都在里面 附件包含:源码、模块、sql 界面展示: 依次为:登录界面、主界面、修改信息界面、增加用户界面、展示详细界面
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值