【MySQL】数据类型

目录

一、数据类型分类

二、数值类型

bit:

 tinyint:

​编辑

 smallint:

 memdiumint:

int:

bigint:

float:

​编辑

decimal:

三、文本类型

char:

字符的概念:

varchar:

 

四、时间类型

date:

 datetime×tamp:​编辑

 五、string类型

 enum:

 具体使用:​编辑

​编辑

 set:

使用方法: 

 查询语句的使用:​编辑


 

数据类型是一种约束,可以对插入的数据进行检查,如果不符合约束,那么就会终止。

一、数据类型分类

        数据类型分为四大类:数值类型、文本类型、时间类型、string类型。

二、数值类型

        有bit类型、int(tinyint, smallint, memdiumint, int, bigint)类型、float(decimal, double)类型、bool类型。

bit:

bit后跟的数字表示这个数据所占用的位数,显示时以ascii码进行显示。如果位数多于设定位数,则发生截断。

 tinyint:

占有1个字节。相当于c语言学过的char类型。范围是-128 ~ 127,无符号是0 ~ 255。

超过范围会进行告警。 

 smallint:

占有2个字节。两个字节16位,所以能表示的最大范围是-2^15+1 ~2^15 / 0 ~ 2^16。

 

越界同样报警,存储时按照最大值进行存储。 

 

 memdiumint:

占用3个字节,三个字节是24位,取值范围在-2^23+1 ~ 2^23 / 0 ~ 2^24。

int:

占用4个字节,四个字节是32位,取值范围在-2^31+1 ~ 2^31 / 0 ~ 2^32。

bigint:

占用8个字节,8个字节是64位,取值范围在-2^63+1 ~ 2^63 / 0 - 2^64。

float:

小数类型,形式为float(m,n),m是数字显示的位数,n是小数点后的位数(精度)。且遵守四舍五入的规则。

比如float(4,3)的取值范围就在±9.999之间。四舍五入的规则是用在第n+1位上的。

 

decimal:

规则同float一样,但是精度要比float高。

 

三、文本类型

分为char、varchar、blob、text。

char:

定长字符型,格式为:char(L),L为文本所占字符数。如果没有占完分配的空间,会用空格进行补齐强制占完。最大一个char可以用255个字符的空间。

字符的概念:

字符不同于c语言阶段学习的字符和字节概念。

 

 


在mysql中字符不同于字节,一个字符表示我们看到的一个符号就是一个字符,所以比如char(3)就可以放3个汉字。

 

由c语言代码测试可以知道一个汉字的字节数是3,但是在我们创建的char(3)中,存放了三个汉字,一共9个字节。

varchar:

动态长度的字符串类型,语法格式为:varchar(L),L是当前字符串的字符长度。最大一个varchar可以用65535个字节。

 

 

四、时间类型

有三种:date(日期,只包含年月日),datatime(日期时间,包含日期和时间),timestamp(时间戳)。

date:

 

 


 datetime&timestamp:

 五、string类型

包含两种类型,enum(枚举)和set(集合)。

 enum:

枚举类型,与c语言不同的是MySQL中的enum从1开始进行默认赋值。

 

 具体使用:

大小写会自动纠正 

 enum只能支持单个数据的插入。

 set:

set是一种集合类型,可以插入set中的多个值,也和enum一样从1开始进行赋值。

使用方法: 

 

 

 

 进行数字插入时,是按照二进制序列的规则插入。

如:5 -- 0101 也就是第一位和第三位的值会被插入。(从右向左)


 查询语句的使用:

 

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

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

相关文章

出入了解——Vue.js

个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。座右铭:海不辞水,故能成其大;山不辞石,故能成其高。个人主页:小李会科技的…

技术掉:PDF显示,使用pdf.js

PDF 显示 场景: 其实直接显示 pdf 可以用 iframe 标签,但产品觉得浏览器自带的 pdf 预览太丑了,而且无法去除那些操作栏。 解决方案:使用 pdf.js 进行显示 第一步:引入 pdf.js 去官网下载稳定版的 pdf.js 文件 然后…

ElasticSearch-第二天

目录 文档批量操作 批量获取文档数据 批量操作文档数据 DSL语言高级查询 DSL概述 无查询条件 叶子条件查询 模糊匹配 match的复杂用法 精确匹配 组合条件查询(多条件查询) 连接查询(多文档合并查询) 查询DSL和过滤DSL 区别 query DSL filter DSL Query方式查…

使用Python突破某网游游戏JS加密限制,进行逆向解密,实现自动登录

兄弟们天天看基础看腻了吧 今天来分享一下如何使用Python突破某网游游戏JS加密限制,进行逆向解密,实现自动登录。 逆向目标 目标:某 7 网游登录主页:aHR0cHM6Ly93d3cuMzcuY29tLw接口:aHR0cHM6Ly9teS4zNy5jb20vYXBpL…

Vue的命令式和声明式的概念

1.命令式框架(jQuery) 这里有个小例子: 1.获取id为app的div标签 2.设置他的文本内容是hello,world 3.为其绑定点击事件 4.当点击时候弹出提示ok 1.首先我们通过$来活动app的标签 $(#app)//获取id为app的标签 2.然后通过text来讲内容设置为hello&am…

Sentinel 授权规则规则持久化

本篇博客我们来学习授权规则,授权规则是对请求者的一种身份的判断。 1、授权规则 授权规则是对请求者的身份做一个判断。你有没有权限来访问我?那就有人可能会说这个功能,好像以前我们在学习微服务的时候讲过网关他不就是把门的吗&#xff1…

云上办公系统项目

云上办公系统项目1、云上办公系统1.1、介绍1.2、核心技术1.3、开发环境说明1.4、产品展示后台前台1.5、 个人总结2、后端环境搭建2.1、建库建表2.2、创建Maven项目pom文件guigu-oa-parentcommoncommon-utilservice-utilmodelservice-oa配置数据源、服务器端口号application.yml…

springboot车辆充电桩

sprinboot车辆充电桩演示录像2022开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:ecli…

文法和语言的基本知识

一、什么形式化的方法用一套带有严格规定的符号体系来描述问题的方法二、什么是非形式化的方法对程序设计语言的描述从语法、语义和语用三个方面因素来考虑所谓语法是对语言结构定义所谓语义是描述了语言的含义所谓语用则是从使用的角度去描述语言三、符号串字母表和符号串字母…

vue基于vant封装可精确到秒的时间选择器

前言 在移动开发中,时间选择的控件比比皆是,但却鲜有类似的组件可以精确到秒级别的,官方可能是考虑到小屏幕手机的显示问题,也可能是使用的场景寥寥无几,但是少不代表没有,所以最近花了点时间基于 vant 组件…

011+limou+C语言深入知识——(3)“字符串函数”和“字符分类函数”和“内存操作函数”以及“部分库函数的模拟实现”

一、字符串库函数 001、求字符串长度strlen size_t strlen ( const char * str );注意size_t是一个无符号类型&#xff0c;没有正负 #include <stdio.h> #include <string.h> int main() {char*str1 "abcdef";strcmpchar*str2 "bbb";if( …

《Roller: Fast and Efficient Tensor Compilation for Deep Learning》

《Roller: Fast and Efficient Tensor Compilation for Deep Learning》 用于深度学习 快速高效的张量编译器 作者 微软亚洲研究院以及多伦多大学等多所高校 摘要 当前编译为了产生高效的kernel时&#xff0c;搜索空间大&#xff0c;通常使用机器学习的方法 找到最优的方案…

【测试开发篇3】软件测试的常用概念

目录 一、软件测试的生命周期(5个步骤) ①需求分析(两个角度) 用户角度&#xff1a; 开发人员的角度&#xff1a; ②测试计划 ③测试设计、测试开发 ④执行测试 ⑤测试评估 二、软件测试贯穿项目的整个生命周期的体现 需求分析阶段 计划阶段 设计阶段 编码阶段 …

Keil5安装和使用小记

随着keil版本的更新&#xff0c;一些使用问题一随之产生。本文针对安装目前最新版本keil软件和使用问题做一些总结。 目录1 Keil5下载&安装1.1 官网下载链接1.2 软件安装1.2.1 安装说明1.2.2 关于 51 和 ARM 共存的问题1.3 软件破解2 pack包安装 & 破解2.1 下载2.2 安装…

智能生活垃圾检测与分类系统(UI界面+YOLOv5+训练数据集)

摘要&#xff1a;智能生活垃圾检测与分类系统用于日常生活垃圾的智能监测与分类&#xff0c;通过图片、视频和摄像头识别生活垃圾&#xff0c;对常见的可降解、纸板、玻璃、金属、纸质和塑料等类别垃圾进行检测和计数&#xff0c;以协助垃圾环保分类处理。本文详细介绍基于YOLO…

找一找马里奥-第14届蓝桥杯STEMA测评Scratch真题精选

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第110讲。 蓝桥杯选拔赛现已更名为STEMA&#xff0c;即STEM 能力测试&#xff0c;是蓝桥杯大赛组委会与美国普林斯顿多…

《Linux的权限》

本文主要对linux的一些基本权限进行讲解 文章目录前言Linux权限&#xff08;1&#xff09;权限的概念&#xff08;2&#xff09;linux下用户分类(root,普通)(3)linux的文件属性文件属性的分类文件权限修改文件权限1、chmod2、chown和chgrp3、fiile权限的三个重要的问题第一个问…

Java面向对象:接口的学习

本文介绍了Java中接口的基本语法, 什么是接口, java中的接口 语法规则, 接口的使用,接口的特性,如何实现多个接口,接口间的继承,以及抽象类和接口的区别 Java接口的学习一.接口的概念二.Java中的接口1.接口语法规则2.接口的使用3.接口的特性4.实现多个接口5.接口间的继承三.抽象…

C++线程池理解

线程池基本信息 线程池是一种结合池化思想衍生出来的一种线程管理及使用的方案 其主要针对服务器端多线程场景下&#xff0c;服务器频繁接收请求&#xff0c;每个请求都分配一个单独的线程去处理。 使用线程的开销&#xff1a; 创建和销毁线程调度线程 线程池主要解决的核…

你是真的“C”——结构体中鲜有人知的“秘密”

你是真的“C”——结构体中的精髓剖析【内存对齐】 【位段】 &#x1f60e;前言&#x1f64c;结构体内存对齐&#xff1a;&#x1f60a;结构体内存对齐存在的意思是什么&#xff1f;&#x1f618;内存对齐例子详细剖析&#xff1a;&#x1f618;结构体中的位段&#xff1a;&…