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

【MySQL】简单掌握数据类型与表操作,让数据库性能飞跃

 个人主页:♡喜欢做梦

欢迎  👍点赞  ➕关注  ❤️收藏  💬评论


目录

🌳一、数据类型

🍃1.数值类型

🍂整型类型

🍂浮点型类型

🍂定点数类型

🍃2.字符串类型

3.🍃日期和时间类型

4.🍃二进制类型

🌳二、表的操作

🍀 1.表的查看

🍀 2.表的创建

🍀 3.查看表的结构

🍀 3.表的删除


🌳一、数据类型

数据类型可分为:数值类型、字符串类型、日期和时间类型、二进制类型等。

🍃1.数值类型

🍂整型类型

整型类型:包括BIT、TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)、BIGINT,分别占用1、2、3、4、8个字节,用于存储不同范围的整数。

整型类型大小范围对应java类型
BIT(M)M指定位数,默认为1

主要用于存储二进制数,每一位只能存储0或1。M的范围在1~64,BIT的取值范围-2^M-1~2^M-1,无符号取值范围0~2^M-1

Boolean
TINYINT1字节取值范围-2^7~2^7-1,无符号取值范围0~2^8-1Byte
SMALLINT2字节取值范围-2^15~2^15-1,无符号取值范围0~2^16-1Short
MEDIUMINT3字节取值范围-2^23~2^23-1,无符号取值范围0~2^24-1

Integer/Short

INT4字节取值范围-2^31~2^31-1,无符号取值范围0~2^32-1Integer
BIGINT8字节取值范围-2^63~2^63-1,无符号取值范围0~2^64-1Long
  • 在int和bigint之间,经常使用的是bigint,范围更大; 

🍂浮点型类型

浮点型类型:浮点型类型有FLOAT和DOUBEL,FLOAT通常占用4字节,DOUBLE通常占用8字节。用于存储单精度和双精度浮点数,表示带小数的数值,但是存在精度误差。

浮点型类型大小说明对应java类型
FLOAT(M,D)4字节单精度,M指定长度,D表示小数点位数,大约可以精确到小数点后7位,会发生精度丢失Float
DOUBLE(M,D)8字节双精度,M指定长度,D表示小数点位数,大约可以精确到小数点后15位,会发生精度丢失Double

🍂定点数类型

定点数类型:DECIMAL(NUMERIC)用于存储精确的小数值,能指定精度和小数位数,适合处理了财务等对要求精度高的数据。

定点数类型大小说明对应java类型
DECIMAL(M,D)动态

双精度,M指定长度,D表示小数点位数,如果省略M,默认为10,省略D,默认为0,精确数值

DigDecimal

🍃2.字符串类型

字符串的主要类型有CHAR、VARCHAR、TEXT、BLOB、ENUM、SET。

字符串类型说明
CHAR[(M)]固定长度字符串,M表示长度,以字符为单位,取值范围0~255,M省略则长度为1,适合存储固定的数据,如身份证号
VARCHAR(M)可变长度字符串,M表示字符的最大长度,取值范围0~65535,有效字符个数取决于实际字符数和使用的字符集
TEXT[(M)]存储大文本类型数据,可存储较长的字符串。有TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT多种类型,存储量不同。有效字符个数取决于实际字符数和使用的字符集
BLOB二进制形式的长文本数据,存储图片、视频、音频等,有TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB。
ENUM枚举类型,内部以整型形式存储,定义时需指定允许的值列表,只存储列表中的值。适用场景:性别字段、订单状态。
SET[(M)]集合类型,可存储多个值,定义时指定允许的成员列表,以整型的形式存储,通过二进制来表示每个成员是否存在。

CHAE和VARCHAR的区别:

  • char是固定长度,一般使用在数据长度固定的情况下,比如身份证等;
  • varchar是可变长度,有效长度取决于实际长度,更节省空间,一样用于存储姓名、地址等。

3.🍃日期和时间类型

日期和时间类型说明
DATE存储日期,格式为 YYYY-MM-DD,可存储范围1000-01-01~9999-12-31
TIME存储时间,格式为HH:MM:SS,范围是-838:59:59~838:59:59
DATETIME

同时存储时期和时间,格式为YYYY-MM-DD HH:MM:SS 

范围从1000-01-01 00:00:00~9999-12-31 23:59:59

TIMESTAMP时间戳类型,能自动记录插入或更新记录的时间,范围1970-01-01 00:00:00~9999-12-31 23:59:59
YEAR4位格式的年份,格式为YYYY,范围1901~2155

4.🍃二进制类型

二进制类型说明
BINARY和VARBINARY类似CHAR和VARCHAR,分别用于存储固定长度和可变长度的二进制数据,如果图片等二进制文件
BLOB二进制形式的长文本数据,存储图片、视频、音频等,有TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB多种类型

🌳二、表的操作

进行表达操作之前,所以我们要先选择库,才能操作表

查看所有库:

这是我所有的库,我选择java1仓库来查看他所拥有的表,先选择一下库:

 

保险起见在查看当前选择的库是哪一个:

 

有确实是java1仓库。那么接下来我们就是要进行表的操作了,首先是表的查看。 

🍀 1.表的查看

show tables;

  • tables是复数; 
  • 与查看库的语法大体相同,只不过是将单词databases换成tables 。

示例:查看java1仓库中的所有表

 

 我java1仓库中是没有表的,所以其显示为空。

🍀 2.表的创建

语法:

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name(
field datatype,
field datatype 
);
  • TEMPORARY:表示创建的是一个 临时的表;
  • field:列名;
  • datatype:表示数据类型;
  • 最后一个字段的定义不加逗号;
  • 字段的定义包围在小括号中,以分号结尾。
  • 可以使用comment在每个字段后添加注释。

 示例:创建一个课程表

查看一下表是否存在库中:
 

  • 建议每一个表都有一个编号字段,类型为bigint ;
  • vachar要制定长度,一般50就够用,在工作中按要求指定。 

🍀 3.查看表的结构

desc 表名; 

示例:

查看courses表 

 

🍀 3.表的删除

语法:

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...
  • 也可以一次同时删除多个表,用逗号隔开 
  • 表的删除要谨慎

 示例:

写法一:

写法二:加上if exists

 

因为courses已经被我删除,所以这里报了警告,

如果想要查看警告信息

 show warnings;

 

如果没有加上if exists ,并且该表不存在,你直接删除,他会直接报错;

 


相关文章:

【MySQL】简单掌握数据类型与表操作,让数据库性能飞跃

个人主页:♡喜欢做梦 欢迎 👍点赞 ➕关注 ❤️收藏 💬评论 目录 🌳一、数据类型 🍃1.数值类型 🍂整型类型 🍂浮点型类型 🍂定点数类型 🍃2.字符串类型 3.&am…...

学习数据结构(11)二叉树(堆)下

1.堆的概念 如果有⼀个集合 K {k0&#xff0c;k1&#xff0c;k2&#xff0c;...&#xff0c;k(n-1)} &#xff0c;把它的所有元素按完全二叉树的形式存储在一个一维数组中&#xff0c;并满足&#xff1a;K(i)<2*i1且K(i)<2*i2&#xff08;K(i)>2*i1且K(i)>2*i2&a…...

计算机毕业设计Python房价预测 房源推荐系统 房源分析可视化(源码+LW文档+PPT+详细讲解)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

JDBC 入门:从基础到实战

一、JDBC 概述 JDBC&#xff0c;即 Java DataBase Connectivity&#xff0c;是 Java 用于连接数据库的技术&#xff0c;旨在通过 Java 代码操作数据库。它是一套接口规范&#xff0c;其实现类由各数据库生产商提供。掌握 JDBC 接口和方法&#xff0c;就能操作不同数据库。而驱…...

vue中为组建添加样式的方式

在 Vue 中&#xff0c;可以通过多种方式为 view 添加样式&#xff0c;并且支持动态绑定样式。以下是几种常见的方式&#xff1a; 1. 内联样式 直接在模板中使用 style 属性来添加样式。 <template><div style"color: red; font-size: 14px;">这是一个…...

Linux探秘坊-------5.git

1.git介绍 1.版本控制器 为了能够更⽅便我们管理这些不同版本的⽂件&#xff0c;便有了版本控制器。所谓的版本控制器&#xff0c;就是能让你了解到⼀个⽂件的历史&#xff0c;以及它的发展过程的系统。通俗的讲就是⼀个可以记录⼯程的每⼀次改动和版本迭代的⼀个管理系统&am…...

训练与优化

训练与优化 损失函数与反向传播 损失函数能够衡量神经网络输出与目标值之间的误差&#xff0c;同时为反向传播提供依据&#xff0c;计算梯度来优化网络中的参数。 torch.nn.L1Loss 计算所有预测值与真实值之间的绝对差。参数为 reduction &#xff1a; none&#xff1a;不对…...

VsCode美化 Json

1.扩展中输入:pretty json 2. &#xff08;CtrlA&#xff09;选择Json文本 示例:{ "name" : "runoob" , "alexa" :10000, "site" : null , "sites" :[ "Google" , "Runoob" , "T…...

基于Spring Boot的社区居民健康管理平台的设计与实现

目录 1 绪论 1.1 研究现状 1.2 研究意义 1.3 组织结构 2 技术介绍 2.1 平台开发工具和环境 2.2 Vue介绍 2.3 Spring Boot 2.4 MyBatis 2.5 环境搭建 3 系统需求分析 3.1 可行性分析 3.2 功能需求分析 3.3 系统用例图 3.4 系统功能图 4 系统设计 4.1 系统总体描…...

使用Java爬虫获取京东商品SKU信息的完整指南

在电商领域&#xff0c;商品SKU&#xff08;Stock Keeping Unit&#xff09;信息是商家和消费者都非常关注的内容。SKU信息不仅包括商品的基本属性&#xff08;如价格、库存、规格等&#xff09;&#xff0c;还涉及到商品的动态数据&#xff08;如促销信息、库存状态等&#xf…...

面试题之Vuex,sessionStorage,localStorage的区别

Vuex、localStorage 和 sessionStorage 都是用于存储数据的技术&#xff0c;但它们在存储范围、存储方式、应用场景等方面存在显著区别。以下是它们的详细对比&#xff1a; 1. 存储范围 Vuex&#xff1a; 是 Vue.js 的状态管理库&#xff0c;用于存储全局状态。 数据存储在内…...

ssm121基于ssm的开放式教学评价管理系统+vue(源码+包运行+LW+技术指导)

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…...

【深度学习】Transformer入门:通俗易懂的介绍

【深度学习】Transformer入门&#xff1a;通俗易懂的介绍 一、引言二、从前的“读句子”方式三、Transformer的“超级阅读能力”四、Transformer是怎么做到的&#xff1f;五、Transformer的“多视角”能力六、Transformer的“位置记忆”七、Transformer的“翻译流程”八、Trans…...

大语言模型内容安全的方式有哪些

大语言模型内容安全的方式有哪些 LLM(大语言模型)内容安全方式主要是通过技术手段对模型生成的内容进行检测、过滤和干预,以确保输出符合道德、法律和社会规范。以下是一些常见的方式方法及其原理和著名的应用案例: 基于规则的过滤 原理:制定一系列明确的规则和模式,例…...

《深度学习》——ResNet网络

文章目录 ResNet网络ResNet网络实例导入所需库下载训练数据和测试数据设置每个批次的样本个数判断是否使用GPU定义残差模块定义ResNet网络模型导入GPU定义训练函数定义测试函数创建损失函数和优化器训练测试数据结果 ResNet网络 ResNet&#xff08;Residual Network&#xff0…...

【Windows软件 - HeidiSQL】导出数据库

HeidSQL导出数据库 软件信息 具体操作 示例文件 选项分析 选项&#xff08;1&#xff09; 结果&#xff08;1&#xff09; -- -------------------------------------------------------- -- 主机: 127.0.0.1 -- 服务器版本: …...

FFmpeg 全面知识大纲梳理

1. FFmpeg 简介 FFmpeg 是什么: 一个开源的多媒体处理框架,用于处理音频、视频和流媒体。支持多种格式和编解码器。提供命令行工具和库(如 libavcodec, libavformat, libavfilter 等)。主要功能: 格式转换编解码流媒体处理音视频剪辑、合并、分离添加滤镜、特效压缩与优化…...

【达梦数据库】dblink连接[SqlServer/Mysql]报错处理

目录 背景问题1&#xff1a;无法测试以ODBC数据源方式访问的外部链接!问题分析&原因解决方法 问题2&#xff1a;DBLINK连接丢失问题分析&原因解决方法 问题3&#xff1a;DBIINK远程服务器获取对象[xxx]失败,错误洋情[[FreeTDS][SQL Server]Could not find stored proce…...

基于 Spring Boot 的社区居民健康管理系统部署说明书

目录 1 系统概述 2 准备资料 3 系统安装与部署 3.1 数据库部署 3.1.1 MySQL 的部署 3.1.2 Navicat 的部署 3.2 服务器部署 3.3 客户端部署 4 系统配置与优化 5 其他 基于 Spring Boot 的社区居民健康管理系统部署说明书 1 系统概述 本系统主要运用了 Spri…...

量化噪声介绍

量化噪声是在将模拟信号转换为数字信号的量化过程中产生的噪声。以下为你详细介绍&#xff1a; 1. 量化的基本概念 在模拟信号数字化过程中&#xff0c;采样是对模拟信号在时间上进行离散化&#xff0c;而量化则是对采样值在幅度上进行离散化。由于模拟信号的取值是连续的&am…...

java断点调试(debug)

在开发中&#xff0c;新手程序员在查找错误时, 这时老程序员就会温馨提示&#xff0c;可以用断点调试&#xff0c;一步一步的看源码执行的过程&#xff0c;从而发现错误所在。 重要提示: 断点调试过程是运行状态&#xff0c;是以对象的运行类型来执行的 断点调试介绍 断点调试是…...

最新智能优化算法:牛优化( Ox Optimizer,OX)算法求解经典23个函数测试集,MATLAB代码

一、牛优化算法 牛优化&#xff08; OX Optimizer&#xff0c;OX&#xff09;算法由 AhmadK.AlHwaitat 与 andHussamN.Fakhouri于2024年提出&#xff0c;该算法的设计灵感来源于公牛的行为特性。公牛以其巨大的力量而闻名&#xff0c;能够承载沉重的负担并进行远距离运输。这种…...

Redis7——基础篇(四)

前言&#xff1a;此篇文章系本人学习过程中记录下来的笔记&#xff0c;里面难免会有不少欠缺的地方&#xff0c;诚心期待大家多多给予指教。 基础篇&#xff1a; Redis&#xff08;一&#xff09;Redis&#xff08;二&#xff09;Redis&#xff08;三&#xff09; 接上期内容&…...

Git备忘录(三)

设置用户信息: git config --global user.name “itcast” git config --global user.email “ helloitcast.cn” 查看配置信息 git config --global user.name git config --global user.email $ git init $ git remote add origin gitgitee.com:XXX/avas.git $ git pull or…...

MySQL 之INDEX 索引(Index Index of MySQL)

MySQL 之INDEX 索引 1.4 INDEX 索引 1.4.1 索引介绍 索引&#xff1a;是排序的快速查找的特殊数据结构&#xff0c;定义作为查找条件的字段上&#xff0c;又称为键 key&#xff0c;索引通过存储引擎实现。 优点 大大加快数据的检索速度; 创建唯一性索引&#xff0c;保证数…...

Linux基础24-C语言之分支结构Ⅰ【入门级】

分支结构 问题抛出 我们在程序设计中往往会遇到如下问题&#xff0c;比如下面的函数计算&#xff1a; 也就是我们必须要通过一个条件的结果来选择下一步的操作&#xff0c;算法上属于一个分支结构&#xff0c;处于严重实现分支结构主要使用if语句。 条件判断 根据某个条件成…...

LeetCode47

LeetCode47 目录 题目描述示例思路分析代码段代码逐行讲解复杂度分析总结的知识点整合总结 题目描述 给定一个可包含重复数字的整数数组 nums&#xff0c;按任意顺序返回所有不重复的全排列。 示例 示例 1 输入: nums [1, 1, 2]输出: [[1, 1, 2],[1, 2, 1],[2, 1, 1] ]…...

C++中std::condition_variable_any、std::lock_guard 和 std::unique_

1、背景 在 C 多线程编程中&#xff0c;同步 和 互斥 是至关重要的概念。C 标准库提供了多种同步机制&#xff0c;其中 std::condition_variable_any、std::lock_guard 和 std::unique_lock 是经常被用到的工具。本文将详细介绍这三者的用途、区别、适用场景&#xff0c;并通过…...

详解AbstractQueuedSynchronizer(AQS)源码

引言 上篇文章讲解了CountDownLatch源码&#xff0c;底层是继承了AQS基类调用父类和重写父类方法实现的&#xff0c;本文将简介AQS源码和架构设计&#xff0c;帮助我们更深入理解多线程实战。 源码架构 1. 状态变量 state AQS 使用一个 int 类型的变量 state 来表示同步状态…...

【Unity动画】导入动画资源到项目中,Animator播放角色动画片段,角色会跟随着动画播放移动。

导入动画资源到项目中&#xff0c;Animator播放角色动画片段,角色会跟随着动画播放移动&#xff0c;但我只想要角色在原地播放动画。比如&#xff1a;播放一个角色Run动画&#xff0c;希望角色在原地奔跑&#xff0c;而不是产生了移动距离。 问题排查&#xff1a; 1.是否勾选…...