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

个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【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的熟练度。

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

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

通过ros系统中websocket中发送sensor_msgs::Image数据给web端显示(二)

通过ros系统中websocket中发送sensor_msgs::Image数据给web端显示(二) mp4媒体流数据 #include <ros/ros.h> #include <signal.h> #include <sensor_msgs/Image.h> #include <message_filters/subscriber.h> #include <message_filters/synchroniz…

计算机组成原理。3-408

1.动态存储和静态存储 2.双端口RAM 注意&#xff1a;cpu通过地址线和数据线读写数据时&#xff0c;不能同时写&#xff0c;但可以同时读&#xff0c;也不能一边读一边写。 3.多体并行存储器 分为高位存储和低位存储 小结 4.磁盘存储器的组成 5.磁盘的性能指标 磁盘读写寻道…

ddns-go部署在linux虚拟机

ddns-go部署ubuntu1804 1.二进制部署 1.虚拟机部署 1.下载linux的x86二进制包 wget https://github.com/jeessy2/ddns-go/releases/download/v5.6.3/ddns-go_5.6.3_linux_x86_64.tar.gz2.解压 tar -xzf ddns-go_5.6.3_linux_x86_64.tar.gz3.拷贝执行文件到PATH下&#xff0c…

【Kotlin精简】第9章 Kotlin Flow

1 前言 上一章节我们学习了Kotlin的协程【Kotlin精简】第8章 协程&#xff0c;我们知道 协程实质是对线程切换的封装&#xff0c;能更加安全实现异步代码同步化&#xff0c;本质上协程、线程都是服务于并发场景下&#xff0c;其中协程是协作式任务&#xff0c;线程是抢占式任务…

【opencv】计算机视觉:实时目标追踪

目录 前言 解析 深入探究 前言 目标追踪技术对于民生、社会的发展以及国家军事能力的壮大都具有重要的意义。它不仅仅可以应用到体育赛事当中目标的捕捉&#xff0c;还可以应用到交通上&#xff0c;比如实时监测车辆是否超速等&#xff01;对于国家的军事也具有一定的意义&a…

Python武器库开发-前端篇之Html基础语法(二十九)

前端篇之Html基础语法(二十九) HTML 元素 HTML元素指的是HTML文档中的标签和内容。标签用于定义元素的类型&#xff0c;而内容则是元素所包含的内容。HTML元素由开始标签和结束标签组成&#xff0c;也可以是自闭合标签。 例如&#xff0c;下面是一个叫做<p>的HTML元素…

laravel8安装多应用多模块(笔记三)

先安装laravel8 Laravel 安装&#xff08;笔记一&#xff09;-CSDN博客 一、进入项目根目录安装 laravel-modules composer require nwidart/laravel-modules 二、 大于laravel5需配置provider&#xff0c;自动生成配置文件 php artisan vendor:publish --provider"Nwid…

Apollo接入配置中心 -- 源码分析之如何获取配置

全文参考&#xff1a;https://mp.weixin.qq.com/s/G5BV5BIdOtB3LlxNsr4ZDQ https://blog.csdn.net/crystonesc/article/details/106630412 https://www.cnblogs.com/deepSleeping/p/14565774.html 背景&#xff1a;近期在接入行内配置中心&#xff0c;因此对配置的加载接入有了…

p12 63.删除无头结点无头指针的循环链表中所有值为x的结点 桂林电子科技大学2015年 (c语言代码实现)注释详解

本题代码如下 void delete(linklist* L, int x) {lnode* p *L, * q *L;while (p->next ! q)// 从第一个结点开始遍历链表&#xff0c;直到尾结点的前一个结点{if (p->next->data x)//判断是否等于x{lnode* r p->next;//将r指向x的位置p->next r->next;…

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

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

Linux常用命令——bind命令

在线Linux命令查询工具 bind 显示或设置键盘按键与其相关的功能 补充说明 bind命令用于显示和设置命令行的键盘序列绑定功能。通过这一命令&#xff0c;可以提高命令行中操作效率。您可以利用bind命令了解有哪些按键组合与其功能&#xff0c;也可以自行指定要用哪些按键组合…

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

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

python基础-numpy

numpy中shape (1,X) 和 &#xff08;X&#xff0c;&#xff09;的区别 参考 首先放结论&#xff1a;shape(x,)是一维数组&#xff0c;ndim1,[1,2,3,…x] ;shape(1,x)是二维&#xff1f;数组&#xff0c;ndim2,[[1,2,3,…n]] >>> import numpy as np >>> a…

常见树种(贵州省):016杜鹃、含笑、桃金娘、金丝桃、珍珠花、观光木

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

记录华为云服务器(Linux 可视化 宝塔面板)-- 安全组篇

文章目录 前言安全组说明安全组的特性安全组的应用场景 进入安全组添加基本规则添加自定义规则如有启发&#xff0c;可点赞收藏哟~ 前言 和windows防火墙类似&#xff0c;安全组是一种虚拟防火墙&#xff0c;具备状态检测和数据包过滤功能&#xff0c;可以对进出云服务器的流量…

5种主流API网关技术选型,yyds!

API网关是微服务项目的重要组成部分&#xff0c;今天来聊聊API网关的技术选型&#xff0c;有理论&#xff0c;有实战。 不 BB&#xff0c;上文章目录&#xff1a; 1 API网关基础 1.1 什么是API网关 API网关是一个服务器&#xff0c;是系统的唯一入口。 从面向对象设计的角度…

Linux加强篇002-部署Linux系统

目录 前言 1. shell语言 2. 执行命令的必备知识 3. 常用系统工作命令 4. 系统状态检测命令 5. 查找定位文件命令 6. 文本文件编辑命令 7. 文件目录管理命令 前言 悟已往之不谏&#xff0c;知来者之可追。实迷途其未远&#xff0c;觉今是而昨非。舟遥遥以轻飏&#xff…

测试用例的缝缝补补

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️山水速疾来去易&#xff0c;襄樊镇固永难开 ☁️定位页面的元素 参数:抽象类By里…

四、防火墙-NAT Server

学习防火墙之前&#xff0c;对路由交换应要有一定的认识 NAT Server1.1.基本原理1.2.多出口场景下的NAT Server1.3.源进源出 —————————————————————————————————————————————————— NAT Server 一般对用户提供一些可访问的…

apipost接口200状态码,浏览器控制台500状态码

后端 url 登录login方法 login(){this.$refs.loginForm.validate(async valid > {if (!valid) return// 由于data属性是一个json对象&#xff0c;需要进行解构赋值{data:result}&#xff0c;进行状态码判断const {data: result} await this.$http.post(/api/doLogin,this.…