Mysql表的数据类型
数据类型
https://www.sjkjc.com/mysql/varchar/
MySQL 中的数据类型包括以下几个大类:
字符串类型
数字类型
日期和时间类型
二进制类型
地理位置数据类型
JSON 数据类型
MySQL 字符串数据类型
VARCHAR:纯文本字符串,字符串长度是可变的。
CHAR: 纯文本字符串,字符串长度是固定的。当实际字段内容小于定义的长度时,MySQL 会用空白空白符好补足。
VARBINARY:二进制字符串,字符串长度是可变的。
BINARY:二进制字符串,字符串长度是固定的。
TINYTEXT:二进制字符串,最大为 255 个字节。
TEXT:二进制字符串,最大为 65K。
MEDIUMTEXT:二进制字符串,最大为 16M。
LONGTEXT:二进制字符串,最大为 4G。
ENUM:枚举;每个列值可以分配一个 ENUM 成员
SET:集合;每个列值可以分配零个或多个 SET 成员
MySQL 数字数据类型
数字又是一个常用的数据类型。如果我们要存储年龄、金额等,需要用到数字数据类型。MySQL 支持 SQL 标准中所有的数字类型,包括整数和小数。
下表显示了 MySQL 中数字相关的数据类型:
TINYINT:一个非常小的整数,最大为 1 个字节。
SMALLINT:一个小整数,最大为 2 个字节。
MEDIUMINT:一个中等大小的整数,最大为 3 个字节。
INT:标准整数,最大为 4 个字节。
BIGINT:一个大整数,最大为 8 个字节。
DECIMAL:一个定点数。
FLOAT:单精度浮点数,最大为 4 个字节。
DOUBLE:双精度浮点数,最大为 8 个字节。
BI:按位存储。
MySQL 日期和时间数据类型
MySQL 提供了丰富的日期和时间类型,这包括日期(DATE)、时间(TIME)、日期和时间(DATETIME)、时间戳(TIMESTAMP)、年份(YEAR)。其中时间戳(TIMESTAMP)数据类型,可以用于跟踪表中一行的变化。
DATE:CCYY-MM-DD 格式的日期值
TIME:hh:mm:ss 格式的时间值
DATETIME:CCYY-MM-DD hh:mm:ss 格式的日期和时间值
TIMESTAMP:CCYY-MM-DD hh:mm:ss 格式的时间戳值
YEAR:CCYY 或 YY 格式的年份值
MySQL 二进制数据类型
MySQL 还支持存储二进制的数据,比如图片文件等。如果要存储文件,就要用到 BLOB 类型。 BLOB 是 binary large object 的缩写,意思是二进制大对象。
TINYBLOB:最大为 255 个字节。
BLOB:最大为 65K。
MEDIUMBLOB:最大为 16M。
LONGBLOB:最大为 4G。
MySQL 空间数据类型
GEOMETRY:任何类型的空间值
POINT:使用横坐标和纵坐标表示的一个点
LINESTRING:一条曲线(一个或多个 POINT 值)
POLYGON:一个多边形
GEOMETRYCOLLECTION:GEOMETRY 值的集合
MULTILINESTRING:LINESTRING 值的集合
MULTIPOINT:POINT 值的集合
MULTIPOLYGON:POLYGON 值的集合
JSON 数据类型
MySQL 从 5.7.8 版本开始支持 JSON 数据类型,允许您更有效地存储和管理 JSON 文档。与 JSON 格式的字符串相比,原生 JSON 数据类型提供有如下的优点:
自动验证。MySQL 会对存储在 JSON 列中的 JSON 文档进行自动验证,无效的文档会产生错误。
最佳存储格式。MySQL 会将存储在 JSON 列中的 JSON 文档转换为允许快速读取文档元素的内部格式。
MySQL 布尔数据类型
MySQL 没有内置布尔数据类型。但是,MySQL 支持 BOOLEAN 或 BOOL 关键字,MySQL 会将 BOOLEAN 或 BOOL 类型转换为 TINYINT(1)。当我们插入 TRUE 或者 FALSE 时,MySQL 会存储为 1 或者 0。
常用的类型解析
VARCHAR 语法
当我们使用 VARCHAR 数据类型时,我们需要指定一个最大的长度。其语法如下:
VARCHAR(max_length)
其中 max_length 是一个数值,它指示了此列的最大字符数。如果我们不指定此值,则默认值是 255。也就是说 VARCHAR 等同于 VARCHAR(255)。 VARCHAR 最多长度为 65535 个字节。
MySQL 存储 VARCHAR 数值时,会将最前的 1 或者 2 个字节存储为实际字符串内容的长度。如果列的值少于 255 个字节,则长度前缀为 1 个字节,否则为 2 个字节。
int用法
MySQL INT 类型使用起来简单,如下:
INT [UNSIGNED]
这里: UNSIGNED 属性标识了此数据类型为无符号整数。
有符号取值范围为-2147483648~2147483647
无符号:0~4294967295
DECIMAL 类型介绍
DECIMAL 数据类型是定点数数据类型,用来存储精确的树枝,比如账务金额等。底层实现上,MySQL 使用二进制形式存储该类型的值
为了存储精确的数值,我们需要为 DECIMAL 数据类型指定总位数和小数位数。这里是 DECIMAL 数据类型的语法:
DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
这里:
M 是总的位数,不包含小数点和正负号。
D 是小数部分的位数。如果 D 为 0 则表示没有小数部分。当 D 省略时,默认值为 0。
UNSIGNED 属性表示数值是无符号的。无符号的数字不能是负数。
ZEROFILL 属性表示当整数部分位数不足时,用整数的左侧用 0 填充。带有 ZEROFILL 的列将自动具有 UNSIGNED 属性。这和 INT 数据类型一样。
比如,我们定义了如下一个列:
amount DECIMAL(9, 4);
那么 amount 列的值的范围是从 -99999.9999 到 99999.9999。
text类型
相关文章:
Mysql表的数据类型
数据类型 https://www.sjkjc.com/mysql/varchar/ MySQL 中的数据类型包括以下几个大类: 字符串类型 数字类型 日期和时间类型 二进制类型 地理位置数据类型 JSON 数据类型 MySQL 字符串数据类型 VARCHAR:纯文本字符串,字符串长度是可变的…...
c语言单向链表
看如下代码,这是一个完整的可运行的c源文件,要注意的点: c语言程序运行不一定需要头文件NULL其实是 (void*)0,把指针赋值成(void*)0,就是防止程序员不想该指针被引用的时候被引用,引用地址为0的值程序会引起系统中断&…...
『番外篇三』Swift “乱弹”之带索引遍历异步序列(AsyncSequence)
概览 在 Swift 开发中,我们往往在遍历集合元素的同时希望获得元素对应的索引。在本课中,我们将向小伙伴们展示除 enumerated() 方法之外的几种实现思路。在玩转普通集合之后,我们将用“魔法棒”进一步搞定异步序列带索引遍历的实现。 在本篇博主中,您将学到以下内容: 概…...
学习JVM
java虚拟机 流程:helloworld.java----(javac编译)----helloworld.class-------(java运行)——JVM——机器码JVM功能 *解释和运行 *内存管理 *即时编译(跨平台-慢一点)jit (反复用到的代码 解释保存再内存里面)…...
Oracle MongoDB
听课的时候第一次碰到,可以了解一下吧,就直接开了墨者学院的靶场 #oracle数据库 Oracle数据库注入全方位利用 - 先知社区 这篇写的真的很好 1.判断注入点 当时找了半天没找到 看样子是找到了,测试一下看看 id1 and 11 时没有报错 2.判断字段…...
Linux-RedHat系统-安装 中间件 Tuxedo
安装步聚 一、中间件安装包: tuxedo121300_64_Linux_01_x86 Tuxedo下载地址: Oracle Tuxedo Downloads 二、新建用户: (创建Oracle用户时,需要root权限操作) 创建用户: # useradd oracle …...
PHP中的依赖注入是怎样的?
依赖注入(Dependency Injection,DI)是一种设计模式,它用于解耦组件之间的依赖关系,提高代码的可维护性、可测试性和灵活性。在 PHP 中,依赖注入通常通过构造函数注入、方法注入或属性注入来实现。 以下是依…...
Python求小于m的最大10个素数
为了找到小于m的最大10个素数,我们首先需要确定m的值。然后,我们可以使用一个简单的算法来检查每一个小于m的数字是否是素数。 下面是一个Python代码示例,可以找到小于m的最大10个素数: def is_prime(n): if n < 1: …...
系统的安全性设计
要设计一个安全的系统,除了要了解一些前面讲到的常用的保护手段和技术措施外,还要对系统中可能出现的安全问题或存在的安全隐患有充分的认识,这样才能对系统的安全作有针对性的设计和强化,即“知己知彼,百战百胜”。 下…...
美容店预约小程序搭建指南
随着互联网的发展,越来越多的传统行业开始尝试将业务与互联网相结合,以提供更加便捷、高效的服务。美容行业也不例外。本文将通过使用第三方制作平台,如乔拓云网,指导您如何搭建一个美观实用的美容店预约小程序,帮助您…...
AI:ElasticSearch
ElasticSearch是一款开源的分布式搜索引擎和数据分析引擎,主要用于处理海量数据并提供近实时的搜索和分析功能。它具有全文检索、结构化检索和数据分析等特点,能够满足各种复杂的搜索需求。ElasticSearch使用Java编写,可以运行在多个服务器上…...
如何用 Python 代码打包成一个可执行的 exe 文件?
将Python代码打包成可执行的EXE文件通常需要使用第三方工具,其中PyInstaller是一个流行的选择。PyInstaller可以将Python脚本打包成独立的可执行文件,无需用户安装Python解释器。 打包Python代码成EXE文件的步骤 步骤1:安装PyInstaller 首…...
【Hive】——CLI客户端(bin/beeline,bin/hive)
1 HiveServer、HiveServer2 2 bin/hive 、bin/beeline 区别 3 bin/hive 客户端 hive-site.xml 配置远程 MateStore 地址 XML <?xml version"1.0" encoding"UTF-8" standalone"no"?> <?xml-stylesheet type"text/xsl" hre…...
简约大气视频制作模板PR剪辑素材PR项目工程文件
Premiere Pro模板,简约大气视频剪辑素材PR项目工程文件(包含手机竖屏分辨率),包含24个媒体占位符和9个文本占位符。可以编辑和自定义文本占位符和媒体占位符。用来展示照片视频制作。包含视频教程。 来自PR模板网:http…...
Guarded Suspension(担保挂起)设计模式
当线程访问某个对象时,发现条件不满足,暂时挂起等待条件满足时再次访问。Guarded Suspension模式是一个非常基础的模式,主要关注(临界值)不满足时将操作的线程正确挂起,以防止出现数据不一致或者操作超过临…...
禾匠榜店商城系统 RCE漏洞复现
0x01 产品简介 禾匠榜店商城系统是浙江禾匠信息科技有限公司的一套基于PHP和MySQL的商城系统。 0x02 漏洞概述 禾匠榜店商城系统的api/testOrderSubmit模块下的preview方法存在命令执行漏洞,攻击者可以向服务器写入木马文件,直接获取服务器权限 0x03 漏洞概述 FOFA:bod…...
Python移动未标注的图片数据集
Python移动未标注的图片数据集 前言前提条件相关介绍实验环境Python移动未标注的图片数据集情况一:有图,无标注文件代码实现输出结果 情况二:有图,有标注文件,但标注信息为空代码实现输出结果 情况一与情况二同时都考虑…...
判断css文字发生了截断,增加悬浮提示
示例: 固定显示宽度,溢出显示...,利用了css的属性,想要实现成下面这样: 针对溢出的文字,hover显示全部。 提示很好加,使用tooltip组件就行了,难点是如何判断是否发生了文字溢出。…...
day33-37-SpringBootV12(整合Spring,SpringMVC,Mybatis,日志,api测试等框架)
ssm spring --> applicationContext.xml配置文件 springmvc --> springmvc.xml配置文件 mybatis —> mybatis-config.xml配置文件 —> springboot优化了之前的框架配置,思想是约定大于配置 一、引言 1.1 初始化配置 为了使用SSM框架去开发,准备SSM…...
如何处理好面试中的“压力测试”?
作为一名求职者,在面试时有时遇到的是压力测试,有时则遇到的是一些无良企业单位,究竟如何把握忍耐的限度,才合格当一个能经受压力的员工,才能避免对无良单位的一味隐忍! 压力面试是指有意制造紧张,以了解求…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...
