当前位置: 首页 > 编程日记 > 正文

mysql字段类型

数字类型

列类型

需要的存储量

范围、备注

TINYINT

1 个字节

一个很小的整数

有符号的范围是-128到127,无符号的范围是0到255

SMALLINT

2 个字节

一个比较小的整数

有符号的范围是-32768到32767,无符号的范围是0到65535

MEDIUMINT

3 个字节

一个中等大小的整数

有符号的范围是-8388608到8388607,无符号的范围是0到16777215

INT

4 个字节

一个正常大小整数

有符号的范围是-2147483648到2147483647,无符号的范围是0到4294967295

即最多可存储10个数字,如果存储手机号(11位)则会失败。

INTEGER

4 个字节

INT的一个同义词

BIGINT

8 个字节

一个大整数

有符号的范围是-9223372036854775808到9223372036854775807,无符号的范围是0到18446744073709551615

FLOAT(M,D)

4 个字节

一个小(单精密)浮点数字。不能无符号。

允许的值是-3.402823466E+38到-1.175494351E-38,0 和 1.175494351E-38到3.402823466E+38。M是显示宽度而D是小数的位数。没有参数的FLOAT或有<24 的一个 参数表示一个单精密浮点数字。

FLOAT

4 个字节

DOUBLE

8 个字节

一个正常大小(双精密)浮点数字。不能无符号。
允许的值是-1.7976931348623157E+308到-2.2250738585072014E-308、
0和2.2250738585072014E-308到1.7976931348623157E+308。

DOUBLE PRECISION

8 个字节

REAL

8 个字节

这些是DOUBLE同义词

DECIMAL(M,D)

M字节(D+2 , 如果M < D)

一个未压缩(unpack)的浮点数字。不能无符号。行为如同一个CHAR列:“未压缩”意味着数字作为一个字符串被存储,值的每一位使用一个字符

NUMERIC(M,D)

M字节(D+2 , 如果M < D)

这是DECIMAL的一个同义词

日期和时间类型

列类型

需要的存储量

范围、备注

DATE

3 个字节

1000-01-01~9999-12-31 3字节(MySQL3.23版以前是4字节 ) 0000-00-00

DATETIME

8 个字节

1000-01-01 00:00:00~9999-12-31 23:59:59 8字节 0000-00-00 00:00:00

TIMESTAMP

4 个字节

19700101000000~2037年的某个时刻 4字节 00000000000000

TIME

3 个字节

-838:59:59~838:59:59 3字节 00:00:00

YEAR

1 字节

YEAR(4):1901~2155 YEAR(2):1970~2069 1字节 0000

字符串类型

列类型

需要的存储量

备注

CHAR(M)

M字节,1 <= M <= 255

VARCHAR(M)

L+1 字节, 在此L <= M1 <= M <= 255

TINYBLOBTINYTEXT

L+1 字节, 在此L< 2 ^ 8

最大长度为255(2^8-1)个字符

BLOBTEXT

L+2 字节, 在此L< 2 ^ 16

最大长度为65535=64K(2^16-1)个字符

MEDIUMBLOBMEDIUMTEXT

L+3 字节, 在此L< 2 ^ 24

最大长度为16777215=16M(2^24-1)个字符

LONGBLOBLONGTEXT

L+4 字节, 在此L< 2 ^ 32

最大长度为4294967295=4G(2^32-1)个字符

ENUM('value1','value2',...)

1 或 2 个字节, 取决于枚举值的数目(最大值65535)

SET('value1','value2',...)

1,2,3,4或8个字节, 取决于集合成员的数量(最多64个成员)


四种text对应四种blob

text与blob的区别在于:text不能存储图片。

blob是二进制流,text是非二进制

mysql 的二进制数据类型 BINARY, VARBINARY, BLOB 都没有字符集的概念

再存取blob数据时,要入库时base64,出库时再base64

-------------------------------------------------------------

1.

blob是二进制大对象,可以容纳可变量数量的数据,其中blob分为4中类型:TINYBLOB,BLOB,mediumblob和LongBlob,他们容纳的长度是不同的.

Text同样也分为四种类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT

2.

blob被视为二进制字符串,Text被视为非二进制字符串;

blob列没有字符集,并且排序和比较基于列值字节的数值值。

TEXT列有一个字符集,并且根据字符集的校对规则对值进行排序和比较。

在TEXT或BLOB列的存储或检索过程中,不存在大小写转换,当未运行在严格模式时,如果你为BLOB或TEXT列分配一个超过该列类型的最大长度的值值,值被截取以保证适合。如果截掉的字符不是空格,将会产生一条警告。使用严格SQL模式,会产生错误,并且值将被拒绝而不是截取并给出警告.在大多数方面,可以将BLOB列视为能够足够大的VARBINARY列。同样,可以将TEXT列视为VARCHAR列。

3.

BLOB和TEXT在以下几个方面不同于VARBINARY和VARCHAR.

BLOB和TEXT列不能有默认值.

当保存或检索BLOB和TEXT列的值时不删除尾部空格。(这与VARBINARY和VARCHAR列相同).

对于BLOB和TEXT列的索引,必须指定索引前缀的长度。对于CHAR和VARCHAR,前缀长度是可选的.

LONG和LONG VARCHAR对应MEDIUMTEXT数据类型。这是为了保证兼容性。如果TEXT列类型使用BINARY属性,将为列分配列字符集的二元校对规则. 

MySQL连接程序/ODBC将BLOB值定义为LONGVARBINARY,将TEXT值定义为LONGVARCHAR。由于BLOB和TEXT值可能会非常长,使用它们时可能遇到一些约束.

BLOB或TEXT对象的最大大小由其类型确定,但在客户端和服务器之间实际可以传递的最大值由可用内存数量和通信缓存区大小确定。你可以通过更改max_allowed_packet变量的值更改消息缓存区的大小,但必须同时修改服务器和客户端程序。例如,可以使用 mysqlmysqldump来更改客户端的max_allowed_packet值.

------------------------------------------------------------------------------------

ZEROFILL属性(零值)适用于所有数值类数据列类型,作用是,如果数值的宽度小于定义的显示宽度,则在数值前填充0。
UNSIGNED属性不允许数据列出现负数。
AUTO_INCREMENT属性可生成独一无二的数字序列。只对整数类的数据列有效。
NULL和NOT NULL属性设置数据列是否可为空。
DEFAULT属性可为数据列指定默认值。

转载于:https://www.cnblogs.com/jthb/p/3338797.html

相关文章:

s-sed替换或者修改文件指定行,同时匹配多个字符串,替换换行符为指定字符

最近需要在脚本中修改几个配置文件参数且不能影响其他参数&#xff0c;于是想到了sed的强大之处&#xff0c;拿来学学 -i参数表示直接替换并修改文件 -i参数时直接修改文件 sed -i s/aaa/bbb/g testfile 将testfile文件中的aaa替换为bbb字符串 删除文件指定行或者某行内容 sed…

linux中非法内存,Linux下数组非法访问导致内存破坏 —— 引发segmentation fault的原因...

2012-02-05 wcdj1, 调试时必需的栈知识2, 数组非法访问导致内存破坏调试时必需的栈知识栈(stack)是程序存放数据的内存区域之一&#xff0c;其特征是LIFO(Last In First Out, 后进先出)式数据结构&#xff0c;即后放进的数据最先备取出。向栈中存储数据的操作称为PUSH(压入)&am…

基于Matlab和Wind SQL数据库的通用选股策略回测程序

function [y,varargout]backtestcomplex(x,varargin) % Created on 2012-07-15 % latest justified on 2012-09-20 % 输入x是一个excel文件的地址字符串&#xff0c;如‘E:\Top50.xlsx’, excel文件的第一行为表头&#xff0c;包含4列&#xff1a;股票交易代码(SZ000001&#x…

Bzoj1123 Blockade

题目链接&#xff1a;https://loj.ac/problem/10104 日常水题&#xff0c;题目中已经给出了算法&#xff0c;写个模板即可&#xff0c;不会割点的这里有一篇博客&#xff1a;https://www.cnblogs.com/WWHHTT/p/9745499.html 难点是每个对可以互换顺序&#xff0c;然后删掉一个点…

sgdisk 磁盘操作命令

划分磁盘分区 sgdisk -n 1:2G:50G /dev/sda 划分磁盘分区&#xff0c;一号分区划分为50G&#xff0c;同时预留2G的空间 磁盘格式化 sgdisk -z -og /dev/sda 查看分区详情 sgdisk -i 1 /dev/hda查看hda第一分区的详情信息 [rootnode3 ~]# sgdisk -i 1 /dev/sdb Partition G…

spring.factories文件的作用

即spring.factories文件是帮助spring-boot项目包以外的bean(即在pom文件中添加依赖中的bean)注册到spring-boot项目的spring容器中。在Spring Boot启动时,它会扫描classpath下所有的spring.factories文件,加载其中的自动配置类,并将它们注入到Spring ApplicationContext中,使得项目能够自动运行。spring.factories文件是Spring Boot自动配置的核心文件之一,它的作用是。

Spring事务七大传播机制与五个隔离级别,嵌套事务

如果当前方法正有一个事务在运行中,则该方法应该运行在一个嵌套事务中,被嵌套的事务可以独立于被封装的事务中进行提交或者回滚。如果封装事务存在,并且外层事务抛出异常回滚,那么内层事务必须回滚,反之,内层事务并不影响外层事务。当前方法必须在一个具有事务的上下文中运行,如有客户端有事务在进行,那么被调用端将在该事务中运行,否则的话重新开启一个事务。当前方法必须运行在它自己的事务中。一个新的事务将启动,而且如果有一个现有的事务在运行的话,则这个方法将在运行期被挂起,直到新的事务提交或者回滚才恢复执行。

emacs python环境配置

python作为日常用语&#xff0c;配置好emacs的开发环境&#xff0c;有效提高日后的开发效率。 几篇老外的文章作为参考&#xff1a; Configing emacs as a python ide python、emacs 安装python和emacs就不用说了&#xff0c;这是必须的&#xff0c;apt-get安装即可 基础python…

编写linux下跑马灯应用程序,01 arm11 led 跑马灯程序

.text.globl _start_start:ldr r0, 0x70000000orr r0, r0, #0x13mcr p15, 0, r0, c15, c2, 4ldr r0, 0x7e004000mov r1, #0str r1, [r0]ldr sp, 8*1024bl xxxxb .start.S文件代码&#xff1b;void delay (){int i;for (i 0; i < 100000; i);}int xxxx (void){volatile unsi…

Exchange 2013防止数据丢失DLP预览

介绍 防止数据丢失&#xff08;Data loss Prevention&#xff09;是Exchange Server 2013带来的一个新功能&#xff0c;感觉其实应该叫做防止数据泄露&#xff0c;许多第三方工具和设备也有类似的功能&#xff0c;而在Exchange 2013种已经直接集成了&#xff0c;并且之前的传输…

Django 模型层(1)

知识预览 ORM简介单表操作章节作业回到顶部ORM简介 MVC或者MVC框架中包括一个重要的部分&#xff0c;就是ORM&#xff0c;它实现了数据模型与数据库的解耦&#xff0c;即数据模型的设计不需要依赖于特定的数据库&#xff0c;通过简单的配置就可以轻松更换数据库&#xff0c;这极…

软件测试面试的linux基础知识,linux基础面试题

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼linux的用户管理useradd 用户名&#xff0c;添加用户【案例】useradd xiaomingpasswd 用户名&#xff0c;为新用户设密码【案例】passwd xiaoming&#xff0c;修改小明的密码userdel 用户名&#xff0c;删除用户【案例】userdel xi…

s-sort命令

对文本操作进行排序&#xff0c;以行为单位&#xff0c;依次根据ascii值进行比较&#xff0c;默认的排序方式为升序 sort [-bcfMnrtk][源文件][-o 输出文件]补充说明&#xff1a;sort可针对文本文件的内容&#xff0c;以行为单位来排序。 参 数&#xff1a;-b 忽略…

变体类的使用 package record case【转载】

**************理论区 start********************* DELPHI中记录的存储方式 在DELPHI中&#xff0c;我们用record关键字来表明一个记录&#xff0c;有时候&#xff0c;我们还会看到用packed record来声明的记录&#xff0c;这二者的区别就在于存储方式的不同&#xff1b;在wind…

【Boost】系列01:时间与日期

timer库(含timer,progress_timer和progress_display三个组件)和date_time timer用法&#xff1a; #include <boost/timer.hpp> #include <iostream> using namespace std; using namespace boost;int main() {timer t;//开始计时cout<<"max timespan:&q…

git学习网址

1、git 上传代码到GitHub 以及git删除github上文件和文件的命令 - lexsaints - CSDN博客 https://blog.csdn.net/weixin_42350212/article/details/80560272 2、git误区error: failed to push some refs to gitgithub.com: - whaleluo的博客 - CSDN博客 https://blog.csdn.n…

Linux压缩和解压缩命令集

.tar文件 解压tar zxvf FileName.tar打包tar czvf SourceName.tar DirName .gz文件 解压&#xff1a; gunzip FileName.gzgzip -d FileName.gz 压缩 gzip FileName .tar.gz 和.gz文件 解压tar zxvf FileName.tar.gz压缩tar zcvf FileName.tar.gz DirName .bz2文件 解压…

XMPP通讯开发-好友获取界面设计

在XMPP通讯开发-服务器连接 中我们成功连接到服务器上面&#xff0c;然后进入到主界面&#xff0c;接下来就是获取好友列表&#xff0c;这里我们分段开发&#xff0c;首先就是界面的设计&#xff0c;这里仿照QQ好友界面&#xff0c;里面的数据先是用模拟的&#xff0c;下一章获…

linux test数字txt,Linux26期 7月4日预习笔记

9.4/9.5 sed一&#xff0c;打印某行sed命令的格式为&#xff1a;sed -n np filename ,单引号内的n是一个数字&#xff0c;可以使用命令sed -n 1,$p filename ,如下去掉-n是有差异要想把所有行打印出来&#xff0c;可以使用命令sed -n 1,$p filename#sed -n 1,$p 文件名另外&…

提高PHP运行速度的小技巧

使用PHP的最大1个优势就是速度快。一般情况下&#xff0c;PHP总是具有足够的速度支持Web内容动态生成&#xff0c;许多时候甚至无法找出比它更快的方法。然而&#xff0c;当面对庞大的访问量、高负荷的应用、有限的带宽&#xff0c;以及其他各种带来性能瓶颈的因素时&#xff0…

基于Python, Selenium, Phantomjs无头浏览器访问页面

引言&#xff1a; 在自动化测试以及爬虫领域&#xff0c;无头浏览器的应用场景非常广泛&#xff0c;本文将梳理其中的若干概念和思路&#xff0c;并基于代码示例其中的若干使用技巧。 1. 无头浏览器 通常大家在在打开网页的工具就是浏览器&#xff0c;通过界面上输入网址就可以…

groovy–流程控制

在本篇文章中&#xff0c;我们将介绍逻辑分支&#xff0c;循环&#xff0c;以及如何从if-else以及try-catch代码块中返回值。 if – elseGroovy 支持Java传统的if-else语法&#xff1a; def x false def y falseif ( !x ) {x true }assert x trueif ( x ) {x false } else…

c语言中二进制用什么字母表示方法,看C语言编码转换--------负数的二进制表示方法...

今天在看C语言编码转换时&#xff0c;既然对负数的二进制表示有些遗忘&#xff0c;查了下网上的资料&#xff0c;他们说的是个P&#xff01;误人子弟&#xff01;和大家讨论了下&#xff0c;贴出来已备在此遗忘&#xff1a;假设有一个 int类型的数&#xff0c;值为5&#xff0c…

du和df的区别

du,disk usage 是通过搜索文件来计算每个文件的大小然后累加&#xff0c;du能看到的文件只是一些当前存在 的&#xff0c;没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和df,disk free,通过文件系统来快速获取空间大小的信息&#xff0c;当我们删除一个文…

solaris11学习必用工具及ISO

一、软件准备、配置及相关说明1&#xff09;Oracle VM VirtualBox & Oracle VM VirtualBox Extension Pack  http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#vbox说明&#xff1a;VirtualBox是Oracle自己的东西&#xff0c;很多考试…

谜题59:什么是差?

下面的程序在计算一个int数组中的元素两两之间的差&#xff0c;将这些差置于一个集合中&#xff0c;然后打印该集合的尺寸大小。那么&#xff0c;这个程序将打印出什么呢&#xff1f; import java.util.*;public class Differences {public static void main(String[ ] args) {…

ceph-osd无法获取osd map导致osd down掉的解决办法

环境&#xff1a;ceph-12.2.1 3节点测试性能集群 60块osd 最近ceph集群中有两个osd在重启之后遇到如下问题,osd获取不到集群osdmap产生coredump&#xff1a; ceph version 12.2.1.06 (3e7492b9ada8bdc9a5cd0feafd42fbca27f9c38e) luminous (stable)1: (()0xa2bf21) [0x7fcd9162…

读书笔记2013第13本:《怎样解题》

《怎样解题》这本书是在看《编程大师访谈录》&#xff08;中文版第12页&#xff09;这本书时无意发现的&#xff0c;一个编程大师推荐这本书来指导编程设计&#xff0c;google到这本书后粗略地翻看了一遍&#xff0c;发现是一本教学生如何解数学题的非常有年头的书。随着仔细品…

suse linux登录黑屏,SUSE Linux登录时黑屏解决办法

我采用的virtual pc虚拟机&#xff0c;安装redhat enterprise 4 linux&#xff0c;安装后出现花屏&#xff0c;通过GRUB的单用户模式下修改/etc/X11/xorg.con我采用的virtual pc虚拟机&#xff0c;安装RedHat enterprise 4 linux&#xff0c;安装后出现花屏&#xff0c;通过GRU…

应用构建工具包 Ecere SDK

Ecere SDK是一个跨平台的工具包构建软件应用程序。目前运行在Windows、Linux和Mac OS X(通过X11)。通过 Ecere SDK,可以开发一次应用程序,并将其部署在所有支持的平台上与一个轻量级运行时环境。它引入了eC这个面向对象语言来源于和完全兼容C,性能好也易于使用。一个内置的3d引…