【从删库到跑路 | 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的熟练度。

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

在这里插入图片描述

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

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

相关文章

Android frameworks 开发总结之八

Quick Settings增加一項 XXX device要求在quick settings中增加一項touch panel. 在/frameworks/base/packages/SystemUI/res/values/config.xml文件中的quick_settings_tiles_default string 中增加touch panel。並在String resource文件中增加顯示的title <!-- The def…

网络数据结构skb_buff原理

skb_buff基本原理 内核中sk_buff结构体在各层协议之间传输不是用拷贝sk_buff结构体&#xff0c;而是通过增加协议头和移动指针来操作的。如果是从L4传输到L2&#xff0c;则是通过往sk_buff结构体中增加该层协议头来操作&#xff1b;如果是从L4到L2&#xff0c;则是通过移动sk_…

Kafka(五)消费者回调 +定时重试 + 理解Rebalance

文章目录 消费者回调如何抽象callBack消息&#xff1f;为什么要设置serverId?如何消费callBack消息&#xff1f; 定时重试消息失败表的设计重试逻辑设计 理解Rabalance通过日志来理解rebalance 参考资料结语示例源码仓库 消费者回调 有些邮件发送成功之后&#xff0c;需要执行…

【Linux】fork()

文章目录 一、fork()是什么&#xff1f;二、fork()干了什么&#xff1f;三、fork()怎么用&#xff1f; 一、fork()是什么&#xff1f; fork()函数其实是在Linux系统中用于创建一个新的进程。让我们看看Linux中是怎么描述的&#xff1f;运行man fork。 RETURN VALUE On success…

php站点伪静态配置(Apache+Linux)

404报错&#xff1a; 404 Not Found nginx/1.15.11 问题解决&#xff1a; 1、Linux location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s/$1 last; } } 2、Apache <IfModule mod_rewrite.c> RewriteEngine on RewriteBase / RewriteCond %{REQU…

英特尔和 ARM 将合作开发移动芯片技术,如何看待双方合作?

英特尔和 ARM 将合作开发移动芯片技术&#xff0c;如何看待双方合作&#xff1f; 最近市场传出Arm要自产芯片&#xff0c;供智能手机与笔电等使用后&#xff0c;外媒指Arm自产芯片将由英特尔晶圆代工部门打造&#xff0c;变成英特尔晶圆代工客户。将采用英特尔18A工艺&#xff…

利用Nginx与php处理方式不同绕过Nginx_host实现SQL注入

目录 首先需要搭建环境 nginxphpmysql环境&#xff1a; 搭建网站 FILTER_VALIDATE_EMAIL 绕过 方法1&#xff1a;冒号号分割host字段 方法2&#xff1a;冒号号分割host字段 方法3&#xff1a;SNI扩展绕过 首先需要搭建环境 nginxphpmysql环境&#xff1a; php安装包&a…

深入了解Spring Cloud中的分布式事务解决方案

引言 介绍分布式系统中事务管理的重要性&#xff0c;以及在云计算环境下分布式事务所面临的挑战。 传统事务和分布式事务 解释本地事务与分布式事务的区别&#xff0c;以及为什么在分布式环境中需要特殊的事务管理机制。 分布式事务的挑战 探讨在分布式系统中实现事务一致性所…

vite和webpack的区别和练习

Vite和Webpack都是现代化的前端构建工具&#xff0c;但它们之间存在一些区别&#xff1a; 构建性能&#xff1a;Vite使用ES Modules提高了构建性能&#xff0c;可以在构建时只构建需要的部分&#xff0c;而Webpack则需要在构建时处理整个应用程序。 开发体验&#xff1a;Vite具…

vue一个页面左边是el-table表格 当点击每条数据时可以在右边界面编辑表格参数,右边保存更新左边表格数据

实现思路&#xff1a; 1.点击当前行通过row拿到当前行数据。 2.将当前行数据传给子组件。 3.子组件监听父组件传过来的数据并映射在界面。 4.点击保存将修改的值传给父组件更新表格。 5.父组件收到修改过后的值&#xff0c;可以通过字段判断比如id&#xff0c;通过 findIn…

VR Interaction Framework2.0使用

1 按键 &#xff0c;比如按压下手柄的B键 if (InputBridge.Instance.BButtonDown){print("kkkkkkbbbbb456");} 2抓取某个物体&#xff0c;那么就在要抓取的那个物体上加一些组件&#xff0c;特别是Grabble Unity Events

cocos2dx DrawNode

cocos2dx 两种绘图方式 DrawPrimitivesDrawNode DrawPrimitives 3.x 已经弃用 绘制的图形可以是实心的&#xff0c;也可以是空心的。 DrawNode 在一个单独的批处理中绘制了所以元素&#xff0c;因此它绘制点、线段、多边形都要比“drawing primitives”快。 绘制的图形都…

【基础知识】AB软件RSLinx如何实现OPC通讯组态

哈喽&#xff0c;大家好&#xff0c;我是雷工。 在上一节了解了什么是RSLinx&#xff1f;以及RSLinx Lite、RSLinx Classice、RSLinx Professional、RSLinx Gateway几个版本的特点。 本节了解AB的RSLinx如何实现OPC组态。 一、创建RSLinx通讯&#xff1a; 1.1、【Communicati…

excel自己记录

1、清除换行符号 2、添加特殊符号&并清除换行符号 7日&15日&30日&60日 3、判断单元格最后一个字符是不是数字&#xff0c;不是就删掉 IF(ISNUMBER(--RIGHT(B2,1)),B2,SUBSTITUTE(B2,RIGHT(B2,1),"")) ISNUMBER(--RIGHT(B2,1))判断最右边的一个数是否…

Wireshark的捕获过滤器

Wireshark的过滤器&#xff0c;顾名思义&#xff0c;作用是对数据包进行过滤处理。具体过滤器包括捕获过滤器和显示过滤器。本文对捕获过滤器进行分析。 捕获过滤器&#xff1a;当进行数据包捕获时&#xff0c;只有那些满足给定的包含/排除表达式的数据包会被捕获。 捕获过滤器…

一起学docker系列之九docker运行mysql 碰到的各种坑及解决方法

目录 前言1 Docker 运行mysql命令2 坑一&#xff1a;无法读取/etc/mysql/conf.d目录的问题3 坑二&#xff1a;/tmp/ibnr0mis 文件无法创建/写入的问题4 坑三&#xff1a;Navicat 连接错误&#xff08;1045-access denied&#xff09;5 坑四&#xff1a;MySQL 登录失败问题结语 …

ros2文件package.xml与cmakelists.txt比较

每次在ros2里面添加文件以后&#xff0c;都要修改packages.xml,与cmakelists.txt文件。

Vue服务端渲染——同构渲染

Vue.js 可以用于构建客户端应用程序&#xff0c;组件的代码在浏览器中运行&#xff0c;并输出 DOM 元素。同时&#xff0c;Vue.js 还可以在 Node.js 环境中运行&#xff0c;它可以将同样的组件渲染为字符串并发送给浏览器。这实际上描述了 Vue.js 的两种渲染方式&#xff0c;即…

爬虫项目实战:利用基于selenium框架的爬虫模板爬取豆瓣电影Top250

&#x1f44b; Hi, I’m 货又星&#x1f440; I’m interested in …&#x1f331; I’m currently learning …&#x1f49e; I’m looking to collaborate on …&#x1f4eb; How to reach me … README 目录&#xff08;持续更新中&#xff09; 各种错误处理、爬虫实战及模…

Lua实现面向对象三大特性

面向对象是基于table实现的 封装 :(冒号) 自动将调用该函数的对象作为第一个参数传入 --Object就是第一参数 function Object:new() self&#xff1a;代表默认传入的第一个参数 _index&#xff1a;当自己的变量中找不到时&#xff0c;会默认找原表中_index指向的内容 Obj…