当前位置: 首页 > news >正文

【Mysql】Mysql数据库基础

1.❤️❤️前言~🥳🎉🎉🎉

Hello, Hello~ 亲爱的朋友们👋👋,这里是E绵绵呀✍️✍️。

如果你喜欢这篇文章,请别吝啬你的点赞❤️❤️和收藏📖📖。如果你对我的内容感兴趣,记得关注我👀👀以便不错过每一篇精彩。

当然,如果在阅读中发现任何问题或疑问,我非常欢迎你在评论区留言指正🗨️🗨️。让我们共同努力,一起进步!

加油,一起CHIN UP!💪💪

🔗个人主页:E绵绵的博客
📚所属专栏:

1. JAVA知识点专栏

        深入探索JAVA的核心概念与技术细节

2.JAVA题目练习

        实战演练,巩固JAVA编程技能

3.c语言知识点专栏

        揭示c语言的底层逻辑与高级特性

4.c语言题目练习

        挑战自我,提升c语言编程能力

5.Mysql数据库专栏

        了解Mysql知识点,提升数据库管理能力

📘 持续更新中,敬请期待❤️❤️

注意mysql语句中字母不分大小写。 

2.数据库操作

2.1显示当前所有的数据库

SHOW DATABASES;

具体SQL语句操作: 

information_schema数据库是MySQL服务器的数据字典(保存所有数据表和库的结构信息)
performance_schema数据库是MySQL服务器的性能字典(保存全局变量等的设置)
mysql 主要负责MySQL服务器自己需要使用的控制和管理信息(用户的权限关系等)
sys是系统数据库,包括了存储过程,自定义函数等信息

切记:这4个数据库是MySQL安装时自动创建的,建议不要随意的删除和修改这些数据库,避免造成服务器故障。 


2.2创建数据库

​CREATE DATABASE IF NOT EXISTS 数据库名称 charset utf8mb4;

 原本是该代码。为什么会变为如上听我叙叙道来:

CREATE DATABASE 数据库名称;
  • 不可重复创建相同的数据库,如果创建的数据库已存在,则程序会报错。

  • 为了防止上述情况,在创建数据库时在数据库名称前添加IF NOT EXISTS,表示当指定的数据库不存在时执行创建操作,否则忽略此操作。

在创建数据库时,我们要指定字符集,这时我们一般指定utf8字符集,它可以包含非常多语言。而MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是 使用utf8mb4,建议大家都使用utf8mb4。

2.3使用数据库 

use 数据库名;

2.4删除数据库

DROP DATABASE  数据库名称;

数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除,所以这是极度危险的。 

3.常用数据类型 

3.1数值类型

分为整形和浮点型。

bit数据类型 是以比特位为单位, 其具体细节如上。

另外四个没什么好说的,老熟人了,但这四个还要说一点:

它们右边能使用小括号数字标注显示宽度。

显示宽度是该数据类型取值范围所能表示的最大宽度,对于有符号类型,符号也占用一个宽度。例如,255的位数是3,而-255的位数是4.显示宽度与取值范围无关,若数值的位数小于显示宽度,会填充空格,若大于显示宽度,则不会影响显示结果

 

之前学过float和double 都是 IEEE 754 标准的浮点数,所以会有精度丢失。

这时就出现了decimal和numeric,它们使用其他方式存储小数,是精度更高的浮点数,不会出现精度丢失现象,但是,运算速度会变慢,占用的空间也更多

数值类型可以指定为无符号(unsigned),表示不取负数,但我们几乎不用,因为其可能会导致结果错误,报错。

3.2字符串类型 

 

我们一般用varchar(size),size代表字符串中最多存在的字符个数,因为可变,所以一般用它。

blob几乎用不到,因为为二进制,不是字符。所以其用来存放音频,视频等非文本内容。

3.3 日期类型

为了方便在数据库中存储日期和时间,MySQL提供了表示日期和时间的数据类型。 

这里我们一般用datetime,因为比较安全,另一个到了2038年就用不了了。

3.4经常用的数据类型 

4.数据表的操作 

需要操作数据库中的表时,需要先使用该数据库:

use db_test;

4.1创建数据表 

CREATE TABLE table_name (field1 datatype,field2 datatype,field3 datatype
);

注意后面是数据类型,前面是字段名。 

 

我们还可以使用comment增加字段说明,可以理解为comment那一段是注释。

 

 

 4.2查看指定表结构

desc 表名;

切记:

  • Field 表示字段名称
  • Type表示字段的数据类型
  • Null表示该字段是否可以为空
  • Key表示该字段是否已设置了索引
  • Default表示该字段是否有默认值
  • Extra表示获取到的与该字段相关的附加信息

 4.3删除表

drop table stu_test;

4,4 显示所有表 

 show tables;

 5. 金钱,价格等所代表的数据类型

数据库中往往会存储金钱,价格这类数据,那么会用什么数据类型去存储呢? 

有些人可能以为金钱,价格这种会涉及到分,所以为小数,但小数存在精度损失,那么用decimal就不会精度损失了,可是decimal太慢了,那么该怎么办呢?

因为价格都是精确到小数点两位数,所以我们可以用整形表示价格,但单位是毛为单位,这样就可以很好解决问题。 

 

http://www.lryc.cn/news/442574.html

相关文章:

  • 一文彻底让你搞懂轨迹规划(总结)
  • windows C++ 并行编程-异步消息块(二)
  • 【软件基础知识】什么是 API,详细解读
  • 计算机四级-计算机网络
  • 【linux 获取时间】
  • Dockerfile部署xxljob
  • Conda新建python虚拟环境问题
  • 这几个优秀的工具网站真心值得推荐——搜嗖工具箱
  • ESP32开发 -- VSCODE+PlatformIO环境安装
  • MySQL--导入SQL文件(命令行导入)
  • 【C#基础】函数传参大总结
  • 初学51单片机之IO口上下拉电阻相关
  • Resnet50网络——口腔癌病变识别
  • Python 中自动打开网页并点击[自动化脚本],Selenium
  • Spring Boot-自动配置问题
  • CS61B学习 part1
  • 我Github的问题解决了!
  • Pytorch构建神经网络多元线性回归模型
  • 如何基于Flink CDC与OceanBase构建实时数仓,实现简化链路,高效排查
  • ActiveMQ、RabbitMQ 和 Kafka 在 Spring Boot 中的实战
  • 火语言RPA流程组件介绍--获取关联元素
  • 【2024研赛】【华为杯E题】2024 年研究生数学建模比赛思路、代码、论文助攻
  • Linux——K8s集群部署过程
  • 二.Unity中使用虚拟摇杆来控制角色移动
  • 基于SpringBoot的旅游管理系统
  • Linux套接字
  • 软件测试面试题(5)——二面(游戏测试)
  • C#基于SkiaSharp实现印章管理(8)
  • 信通院发布首个《大模型媒体生产与处理》标准,阿里云智能媒体服务作为业界首家“卓越级”通过
  • AI学习指南深度学习篇-Adam的Python实践