【从删库到跑路 | MySQL总结篇】数据库基础(增删改查的基本操作)

news2024/11/18 3:24:14

个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【MySQL学习专栏】🎈
本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌
在这里插入图片描述

重点放前面:

MySQL是一个客户端、服务器结构的程序。
MySQL默认是拉丁文,不支持中文。需要我们在创建数据库的时候设置一下字符编码(utf8或者utf8mb4)

目录

  • 一、数据库操作
  • 二、数据库数据类型
  • 三、数据表操作(增删查改)

一、数据库操作

// 创建数据库
create database db_name;
create database db_name [character set charset_name]; // 设置字符集方式1
create database db_name [charset charset_name]; // 设置字符集方式2

// 显示数据库
show databases;

// 使用数据库
use db_name;

// 删除数据库
drop database db_name;

二、数据库数据类型

数字

数据类型大小说明
BIT[(M)]M指定位数,默认为1二进制数,M范围从1到64,存储数值范围从0到2^M-1
TINYINT1字节
SMALLINT2字节
INT4字节
BIGINT8字节
FLOAT(M,D)4字节单精度,M指定长度,D指定小数位数,会发生精度丢失
DOUBLE(M,D)8字节双精度,M指定长度,D指定小数位数,会发生精度丢失
DECIMAL(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数。可以精确表示小数(代价是存储占用的空间更大,计算速度更快)
NUMERIC(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数。可以精确表示小数 (代价是存储占用的空间更大,计算速度更快)

字符串

数据类型大小说明
VARCHAR(SIZE)SIXE表示最大长度,单位为字符0-65535字节可变长度字符串
TEXT0-65535字节长文本数据
MEDIUMTEXT0-16777215字节中等长度的文本数据
BLOB0-65535字节二进制形式的长文本数据

时间日期

数据类型大小说明
DATETIME8字节范围从1000到9999年,不会进行时区的检索及转换
DATESTAMP4字节范围从1970到2038年,自动检索当前时区并进行转换

三、数据表操作(增删查改)

// 创建表
CREATE TABLE table_name (
    column1 data_type constraint,
    column2 data_type constraint,
    ...
    constraint // constraint是可选的约束条件,如主键、外键等。
);
// 查看数据库中的所有表
show tables;

// 查看指定表的结构
desc db_name;

// 删除表
drop table db_name;

// 向数据表中插入数据
// 一次性插入多行数据的效率远远高于每次只插入一条数据分多次插入
// 因为每个插入数据都涉及到客户端和服务器之间的通信。MySQL是一个客户端、服务器结构的程序。
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...),(value1,value2,velue3);
select 执行过程:①遍历每一行数据; 
②把当前数据带入到条件中,成立则保留,不成立则不保留;
③针对条件成立的记录,按照select后面的表达式/列进行计算。

// 方式一:全列查询数据表中的具体内容
select * from table_name;

// 方式二:查看表中的具体数据(指定列查询)
SELECT column1, column2, ... FROM table_name;

// 方式三:表达式查询
// 表达式查询是在查询的同时进行运算,然后把查询到的结果返还给mysql客户端
// 最终客户端拿到的是临时表的数据,不会影响到服务器存储的数据本体。
select 表达式 from tb_name;

// 方式四:查询的时候给列/表达式指定别名(as可以省略但是不建议省略)
SELECT 列名 AS 别名 FROM table_name;

// 方式五:去重查询
select distinct 列名 from table_name;

// 方式六:查询排序(升序)
// 查询操作只是针对临时表进行操作,对于数据库服务器上原始的数据并没有产生任何的影响
SELECT1,2 FROM 表名 ORDER BY12... ASC; // 这里不写ASC也可以,因为默认是按照升序进行排序的。
// 降序
SELECT1,2 FROM 表名 ORDER BY12... DESC;

// 方式七:条件查询
select 列名 from table_name where 条件;
// 条件查询:如果条件成立,则将该记录加入结果集并返还给客户端;条件不成立则跳过该记录
// 条件比较不仅仅是列名和常量进行比较,列名和列名之间也可以进行比较。
// mysql的查询条件中不允许使用无法使用列的别名(如果我们尝试在mysql中使用别名的话那么这个别名不能够被识别出来。)。

// 方式八:分页查询
描述了当前的结果从哪一条开始算,
limit num1约束了结果中最多可以包含几条数据;
offset nums2表示从下标为num2的的记录开始获取
select * from table_name limit num1 offset nums2;


// 模糊匹配:% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符
update修改表操作(先查询在进行修改)
update table_name set 列名1 =,列名2 =,... [where 条件];
// 如果不加where条件的话就会对表中表中的所有行
// 此时的修改操作针对的是mysql服务器上的本体数据,是持久生效的
// 如果我们update设定的条件没有设定好的话,那么如果想恢复回原来的数据此时的成本是很高的(因为我们不知道那些行被修改了哪些没有被修改)
删除表中行的操作(直接删除指定的行)
// 删除是按照行来进行删除的
// 如果没有指定where条件就会把删除所有的行进行删除(和删除表操作差不多,即数据丢失但是表没有丢失)
delete from table_name [where 条件];

好了,以上就是本文的全部内容了。主要讲解了对数据库的一些操作和数据表的增删查改的简单操作。内容比较基础但是很重要,需要我们多多练习,举一反三,甚至是举一反十来增加自己的编写sql的熟练度。

就到这里吧,再见啦友友们!!!

在这里插入图片描述

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

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

相关文章

常见树种(贵州省):017柳树、喜树、珙桐、木棉、楝、枫杨、竹柏、百日青、翅荚香槐、皂荚、灯台树

摘要:本专栏树种介绍图片来源于PPBC中国植物图像库(下附网址),本文整理仅做交流学习使用,同时便于查找,如有侵权请联系删除。 图片网址:PPBC中国植物图像库——最大的植物分类图片库 一、柳树 …

Ubuntu服务器/工作站常见故障修复记录

日常写代码写方案文档,偶尔遇上服务器出现问题的时候,也需要充当一把运维工程师,此帖用来记录服务器报错的一些解决方案,仅供参考! 文章目录 一、服务器简介二、机箱拆解三、基本操作3.1 F2进入BIOS3.2 F12进入Boot Me…

sql 动态语句

批量删除用的 foreach

剑指offer(C++)-JZ43:整数中1出现的次数(算法-其他)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 输入一个整数 n ,求 1~n 这 n 个整数的十进制表示中 1 出现的次数 例如&#xff0…

Spring原理——基于xml配置文件创建IOC容器的过程

Spring框架的核心之一是IOC,那么我们是怎么创建出来的Bean呢? 作者进行了简单的总结,希望能对你有所帮助。 IOC的创建并不是通过new而是利用了java的反射机制,利用了newInstance方法进行的创建对象。 首先,我们先定义…

医学检验(LIS)管理系统源码,LIS源码,云LIS系统源码

医学检验(LIS)管理系统源码,云LIS系统全套商业源码 随着全自动生化分析仪、全自动免疫分析仪和全自动血球计数器等仪器的使用,检验科的大多数项目实现了全自动化分析。全自动化分析引入后,组合化验增多,更好的满足了临床需要&…

抵御网络威胁的虚拟盾牌:威胁建模

威胁建模是一个允许您管理因日益复杂且不断变化的 IT 安全威胁而产生的风险的过程。为了保护敏感系统和数据,主动了解和应对这些威胁至关重要。 威胁建模是识别、评估和减轻这些威胁的关键过程,确保组织准备好面对不断出现的新的复杂挑战。 本文将详细…

RTL8762x芯片避坑总结之1——用GPIO模拟I2C

1. 使用GPIO模拟I2C: 1.1 按常规逻辑 在输出第1个数据,切换为输入读取ACK后,切回输出无效,不能输出数据: 1.2 在切换输入输出前,需要对Pad重新进行配置 重新配置后,输入输出切换成功&#xf…

笔记本电脑可以投屏到电视吗?Win、Mac、Linux分别怎么投屏?

如果你的电视是安卓电视,那么答案是:完全可以! 不管你的笔记本电脑是Windows系统、macOS系统还是Linux系统,你都可以借助AirDroid Cast的电脑客户端或网页版,将电脑屏幕投屏到安卓智能电视上。 首先,你需要…

数据链路层-以太网协议

目录 数据链路层的作用认识以太网以太网帧格式认识MAC地址对比理解MAC地址和IP地址认识MTUMTU对UDP协议的影响MTU对TCP协议的影响数据跨网络传输的过程ARP协议ARP协议作用ARP数据报的格式ARP协议的工作流程 数据链路层的作用 我们知道数据能在网络中从一台主机发送到另一台主机…

【Proteus仿真】【STM32单片机】智能垃圾桶设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器,使用报警模块、LCD1602液晶模块、按键模块、人体红外传感器、HCSR04超声波、有害气体传感器、SG90舵机等。 主要功能: 系统运行后&…

极智项目 | 实战实时、多人2D人体姿态识别之OpenPose

欢迎关注我的公众号 [极智视界],获取我的更多经验分享 大家好,我是极智视界,本文来介绍 实战实时、多人2D人体姿态识别之OpenPose。 本文介绍的 实战实时、多人2D人体姿态识别之OpenPose,提供完整的可以一键执行的项目工程源码&…

android实战项目之二十二---如何快速APP中集成支付宝和微信支付功能

效果图 实现方案 jcenter 集成方式 implementation com.xgr.easypay:EasyPay:2.0.5 // 基类库,必选 implementation com.xgr.easypay:wechatpay:2.0.5 // 微信支付,可选 implementation com.xgr.easypay:alipay:2.0.5 // 支付宝支付,可…

2023亚马逊云科技re:Invent引领科技新潮流:云计算与生成式AI共塑未来

2023亚马逊云科技re:Invent引领科技新潮流:云计算与生成式AI共塑未来 历年来,亚马逊云科技re:Invent,不仅是全球云计算从业者的年度狂欢,更是全球云计算领域每年创新发布的关键节点。 2023年亚马逊云科技re:Invent大会在美国拉斯…

C语言算术转换例题

这里写目录标题 例题一题目解析答案 例题二题目解析答案 例题三题目解析答案 例题四方法一解析方法二解析 例题五答案方法一方法二解析 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒 个人主页 🥸&#…

golang panic关键词执行原理与代码分析

使用的go版本为 go1.21.2 首先我们写一个简单的panic调度与捕获代码 package mainfunc main() {defer func() {recover()}()panic("panic test") }通过go build -gcflags -S main.go获取到对应的汇编代码 可以看到当我们调度panic时,Go的编译器会将这段…

uniapp视频倍速播放插件,uniapp视频试看插件——sunny-video使用文档

sunny-video视频倍速播放器 组件名:sunny-video 效果图 img1img2img3img4 平台差异说明 目前已应用到APP(安卓、iOS)、微信(小程序、H5)其它平台未测试 安装方式 本组件符合easycom规范,HBuilderX 2.5…

JoyT的科研之旅第一周——科研工具学习及论文阅读收获

CiteSpace概述 CiteSpace 是一个用于可视化和分析科学文献的工具,它专门针对研究者进行文献回顾和趋势分析。CiteSpace 的核心功能是创建文献引用网络,这些网络揭示了研究领域内各个文献之间的相互关系。使用 CiteSpace 可以为论文研究做出贡献的几种方…

【迅搜03】全文检索、文档、倒排索引与分词

全文检索、文档、倒排索引与分词 今天还是概念性的内容,但是这些概念却是整个搜索引擎中最重要的概念。可以说,所有的搜索引擎就是实现了类似的概念才能称之为搜索引擎。而且今天的内容其实都是相关联的,所以不要以为标题上有四个名词就感觉好…

NX二次开发UF_CURVE_ask_int_parms_sc 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CURVE_ask_int_parms_sc Defined in: uf_curve.h int UF_CURVE_ask_int_parms_sc(tag_t int_curve_object, int * num_objects_set_1, tag_t * * object_set_1, int * num_object…