2、浮点型(float和double) 设一个字段定义为float(5,3),如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位。...3、定点数 浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。...3.char类型的字符串检索速度要比varchar类型的快。...6.日期时间类型 若定义一个字段为timestamp,这个字段里的时间数据会随其他字段修改的时候自动刷新,所以这个数据类型的字段可以存放这条记录最后被修改的时间。...数据类型的属性 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
大家好,又见面了,我是你们的朋友全栈君。 前言: 要了解一个数据库,我们必须了解其支持的数据类型。MySQL 支持大量的字段类型,其中常用的也有很多。...浮点型主要有 float,double 两个,浮点型在数据库中存放的是近似值,例如float(6,3),如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位,...2.字符串类型 字符串类型也经常用到,常用的几个类型如下表: 其中 char 和 varchar 是最常用到的。char 类型是定长的,MySQL 总是根据定义的字符串长度分配足够的空间。...3.日期时间类型 MySQL支持的日期和时间类型有 YEAR 、TIME 、DATE 、DATETIME 、TIMESTAMP,几种类型比较如下: 涉及到日期和时间字段类型选择时,根据存储需求选择合适的类型即可...总结: 本篇文章主要介绍了 MySQL 中常用的字段类型,平时用到的字段类型基本都在这里了,以一张思维导图总结如下: 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。
数据类型 一、数据类型分类 mysql 中的数据类型分类如下,其中红色字体的为常用的类型: 二、数值类型 mysql 中表的建立属性列:列名称 数据类型,例如 num int,它与我们平时写的语言数据类型是倒过来的...如果我们在上面的表格中插入大于两个字符的数据,如下,是会越界插入的: 这也就说明了一个问题,如果我们向 mysql 特定类型中插入不合法的数据,mysql 一般都是直接拦截我们,不让我们做对应的操作!...反过来,如果我们已经有数据被成功插入到 mysql 中,一定插入的时候是合法的!...所以,mysql 中,一般而言,数据类型本身也是一种约束,所谓约束,就是倒逼用户尽可能进行正确的插入,约束的是用户,这样就能保证数据库中的数据是可预期的,完整的。...(因为 gbk 中,一个字符占用2字节); 我们可以验证一下,我们可以创建一个表,里面包含 varchar 类型并设置大小为 21844,因为字符集默认为 utf8,如下: 上图验证了 utf8 确实是不能超过
MySQL索引类型: 1、普通索引 最基本的索引,它没有任何限制,用于加速查询。 创建方法: a. ...如果是组合索引,则列值的组合必须唯一。 创建方法: a. ...(例如:name(11)) 4、组合索引 指多个字段上创建的索引,只有在查询条件中使用了创建索引时的第一个字段,索引才会被使用。...fulltext索引跟其它索引大不相同,它更像是一个搜索引擎,而不是简单的where语句的参数匹配。...修改表结构 ALTER TABLE article ADD FULLTEXT INDEX index_article_contents (contents); 总结 虽然索引可以增加查询数据,但对于更新
MYSQL数据库-数据类型 零、前言 一、数据类型分类 二、数据库的字段属性 三、数值类型 1、tinyint类型 2、bit类型 3、float类型 4、decimal类型 四、字符串类型 1、char...类型 2、varchar类型 3、char和varchar比较 4、日期和时间类型 5、enum和set类型 零、前言 本章主要讲解学习MYSQL数据库的数据类型 一、数据类型分类 数据类型示图:...二、数据库的字段属性 所谓字段属性就是用来修饰数据类型的 主要的字段属性: UnSigned:无符号的,声明了该列不能为负数 ZEROFILL:0填充的,不足位数的用0来填充 , 如int...示图: 表格: 数据类型 描述 大小 tinyint 十分小的数据 1个字节 smallint 较小的数据 2个字节 mediumint 中等大小的数据 3个字节 int 标准的整数 4个字节 bigint...较大的数据 8个字节 float 浮点数 4个字节 double 浮点数 8个字节 decimal 字符串形式的浮点数,一般用于金融计算 1、tinyint类型 数值越界测试: 说明: 在MySQL
MySQL数据库数据类型分类 在MySQL数据库中,MySQL数据类型分有四大类:数值类型、文本/二进制类型、时间日期和String类型。...以下是这四大类的具体类型: 数值类型 数值类型的范围和字节大小: tinyint类型 tinyint类型只有一个字节大小,其数据范围为:【-128,127】 有符号举例: mysql> create...+ 1 row in set (0.00 sec) 温馨提示:尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为...如果数据确定长度都一样,就使用定长(char),比如:身份证,手机号,md5。 如果数据长度有变化,就使用变长(varchar), 比如:名字,地址,但是你要保证最长的能存的进去。...timestamp时间戳:从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和 datetime 完全一致,占用四字节。 举例:分别给出这三种日期时间类型的数据。
07.14自我总结 MYSQL数据库数据类型 一.整数类型和浮点数典型 1.有符号/没符号 对于整数和负整数来说,默认情况下是有符号范围的 默认是有符号 有符号和没符号其实就是有没有包括负数,有符号是包括负数的...(0,+) 超出范围取极值 2.严选/非严选 我们不推荐使用非严格模式下建立table,因为它会可能造成数据丢失的情况,所以我们必须在5.6版本中将mysql设置为严格模式。...严选情况下,数据超过他的设置范围他会报错 非严选情况下,数据超过他的设置范围不会报错,但是只存他设置大小的那一部分的数据,多余的会丢掉 3.常见的类型 1.整数型 数据类型 字节数 符号范围 有符号范围...与set 规定这个里面输入内容是什么,你可以输入他的内容,也可以输入他的索引 enum与set区别,enum只能输一个,set能输入一个或多个,且用集合的形式输入 注意: mysql会自动将字符串后面的空格删掉...所以你的数据在存储前应该先把空格处理掉 三.时间类型 year :格式YYYT data:格式YYYY-MM-DD time:格式HH:MM:SS datatime:格式YYYY-MM-DD HH:
概述 MySQL主要包括五大数据类型: 数字、字符串、时间、其他。数据类型(data_type)是指系统中所允许的数据的类型。 MySQL数据类型定义了列中可以存储什么数据以及该数据怎样存储的规则。...数据库中的每个列都应该有适当的数据类型,用于限制或允许该列中存储的数据。例如,列中存储的为数字,则相应的数据类型应该为数值类型。...如果使用错误的数据类型可能会严重影响应用程序的功能和性能,所以在设计表时,应该特别重视数据列所用的数据类型。更改包含数据的列不是一件小事,这样做可能会导致数据丢失。...因此,在创建表时必须为每个列设置正确的数据类型和长度。...数据类型 数值类型 类型 大小 范围(有符号) 范围(无符号) 用途 TINYINT 1 字节 (-128, 127) (0, 255) 小整数值 SMALLINT 2 字节 (-32 768, 32
07.14自我总结 MYSQL数据库约束类型 一.主键约束(primary key) 主键约束要求主键列的数据唯一,并且不能为空。主键分为两种类型:单字段主键和多字段联合主键。...一个表的外键可以为空,若不为空,则每一个外键值必须等于另一个表中主键的某个值。 外键的作用:保证数据应用的完整性。 ...非空约束 语法规则:字段名 数据类型 not null 创建表格后 alter table test modify 段名 数据类型 not null; 四.唯一性约束(Unique) 指定唯一约束 唯一约束...语法规则:字段名 数据类型 Uniquel 再所有列创建完毕后:unique (字段名称) 创建表格后 alter table test modify 段名 数据类型 Unique; 五.默认约束(Default...语法规则: 字段名 数据类型 Dfault 默认值 创建表格后 alter table test modify 段名 数据类型 Dfault 默认值;
三、数据库结构的优化 1、选择合适的数据类型 1、数据类型选择 数据类型的选择,重点在于“合适”二字,如何确定选择的数据类型是否合适了? 1、使用可以存下你的数据的最小的数据类型。...(时间类型数据:可以使用varchar类型,可以使用int类型,也可以使用时间戳类型) 2、使用简单的数据类型,int要比varchar类型在mysql处理上简单。...(int类型存储时间是最好的选择) 3、尽可能的使用not null定义字段。...(innodb的特性所决定,非not null的值,需要额外的在字段存储,同时也会增加IO和存储的开销) 4、尽量少用text类型,非用不可时最好考虑分表。...结论: 1、unix_timestamp()函数是将日期格式的数据转换为int类型 2、FROM_UNIXTIME(timestr)函数是将int类型转换为时间格式 案例二:ip地址的存储 在我们的外部应用中
show create table admin; admin是table名,这样就可以看见admin表创建时的语句了。...修改engine类型: alter table admin engine=ndbcluter; 将admin的engine类型改为ndbcluster,因为我的admin是放在mysql cluster...上的。
1.2 数据类型 MySQL中的数据类型是强类型 1.2.1 数值型 1、 整型 整形 占用字节数 范围 tinyint 1 -128~127 smallint 2 -32768~32767 mediumint...1.2.2 字符型 在数据库中没有字符串概念,只有字符,所以数据库中只能用单引号 数据类型 描述 char 定长字符,最大可以到255 varchar 可变长度字符,最大可以到65535 tinytext...1,第二个值是2,以此类推,枚举值在数据库存储的是整形数字。...true和false在数据库中对应的是1和0 mysql> create table stu18( -> flag boolean -> ); Query OK, 0 rows affected...1.2.6 练习题 电话号码一般使用什么数据类型存储? varchar 手机号码用什么数据类型 char 性别一般使用什么数据类型存储?
、性别 日期时间型:出生日期、注册日期 一、数值类型 1.1整数型 PS:工作中一般使用INT类型就够了 关于整数型字段 -使用UNSIGNED修饰时,对应的字段只保存正数 -数值不够指定宽度时...,在左边填空格补位 -宽度仅仅是显示宽度,存数值的大小由类型决定 -使用关键字ZEROFILL时,填0代替空格补位 -当字段值与类型不匹配时,字段值作为0处理 -数值超出范围时,仅保存最大/最小值...表字段的设置 从左至右依次为: 字段名 | 字段类型 | 是否为空 | 是否为主键 | 默认值 | 描述信息 1.2 浮点类型 关于浮点型字段 -定义格式:float(总宽度,小数位数) -...1、定长:char(字符数) -最大长度255字符 -不够指定字符数时在右边用空格补齐 -自动截断超出指定字符数的数据 2、变长:varchar(字符数) -按数据实际大小分配存储空间 -...自动截断超出指定字符数的数据 3、大文本类型:text/blob -字符数大于65535存储时使用 mysql> create table t3( -> name char(10),
类型数值范围内的数据是可以的: mysql> insert into t1 values (-128); Query OK, 1 row affected (0.01 sec) mysql> insert...1264 (22003): Out of range value for column 'num' at row 1 mysql> 对于MySql,如果我们向mysql特定的类型中插入不合法的数据...反过来,我们如果已经有数据被插入到MySql中了,一定是插入的时候是合法的 所以MySql中一般而言,数据类型本身也是一种约束,约束程序员尽可能进行正确的插入,约束使用者,如果你不是一个很好的使用者,...就能保证数据库中的数据是可预期,完整的 MySql表中建立属性列:列名称 类型在后,如num tinyint unsigned; 这是tinyint类型我们所需要注意的,同时,尽量不使用unsigned...举个例子: find_in_set的作用是查对应的一个元素是否在一个集合里面。0表示假,非0表示真 如上就是在集合中的查找
1.索引类型 1.1 普通索引 NORMAL: 是最基本的索引,它没有任何限制。 1.2 唯一索引 SPATIAL: 与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。...值得一提的是,在数据量较大时候,现将数据放入一个没有全局索引的表中,然后再用CREATE index创建fulltext索引,要比先为一张表建立fulltext然后再将数据写入的速度快很多。...2.3 索引只是提高效率的一个因素,如果有大数据量的表,就需要花时间研究建立最优秀的索引,或优化查询语句。...所以我们在数据库设计时不要让字段的默认值为null。 3.2 使用短索引 对串列进行索引,如果可能应该指定一个前缀长度。...因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引。
5.日期类型 5.1 datetime类型 与时区无关的, 占用8个字节的存储空间 datetime(6) 用于存储毫秒级别 时间范围是1000-01-01 00:00:00 到 9999-12-31...23:59:59 5.2 timestamp类型 本质存储的是时间戳, 使用int存储, 占用了4个字节....时间范围是1970-01-01到2038-01-19 类型显示依赖于所指定的时区 5.3 date类型和time类型 date类型存储常用于生日的存储....相比于字符串/datetime/int存储要更少, 只需要使用3个字节 使用date类型还可以利用日期时间函数进行日期之间的计算 时间范围: 1000-01-01到9999-12-31 不要使用字符串类型来存储日期时间数据...日期时间类型通常比字符串占用的存储空间更小 日期时间类型在进行查找过滤的时候可以利用日期来进行对比 日期时间 类型还有着丰富的处理函数, 可以方便的对时期类型进行日期计算 使用int不如使用timestamp
Microsoft Access、MySQL 和 SQL Server 所使用的数据类型和范围。...Microsoft Access 数据类型 MySQL 数据类型 在 MySQL 中,有三种主要的类型:Text(文本)、Number(数字)和 Date/Time(日期/时间)类型。...Text 类型: Number 类型: 注意:以上的 size 代表的并不是存储在数据库中的具体的长度,如 int(4) 并不是只能存储4个长度的数字。...int(3)、int(4)、int(8) 在磁盘上都是占用 4 btyes 的存储空间。就是在显示给用户的方式有点不同外,int(M) 跟 int 数据类型是相同的。...SQL Server 数据类型 String 类型: Number 类型: Date 类型: 其他数据类型:
注释 uniqueidentifier 数据类型的列或局部变量可用两种方法初始化为一个值: 使用 NEWID 函数。...使用 uniqueidentifier 数据 uniqueidentifier 数据类型存储 16 字节的二进制值,该值的使用与全局唯一标识符 (GUID) 一样。...uniqueidentifier 数据类型不象IDENTITY 属性那样为新插入的行自动生成新的ID。...uniqueidentifier 数据类型的主要优点是保证由 Transact-SQL NEWID 函数或应用程序 GUID 函数生成的值在全球是唯一的。...uniqueidentifier 数据类型具有 16 个字节,与其它那些诸如 4 字节的整数相比要相对大一些。
一:引擎 引擎决定数据库存取数据的方式==>不同的特点==>不同的用户体验 前提是:引擎是建表时规定,提供给表使用的,不是数据库 show engines; #展示所有引擎 重点:innodb...: 宽度和约束条件为可选参数,用来限制存放数据的规则 三:数据库模式 sql_mode:反映数据库的全局变量 数据库模式限制的是客户端对服务器操作数据的方式(是否严格) 两种模式:... Mysql数据库支持:整形,浮点型,字符型,时间类型,枚举类型,集合类型 4.1:整形 类型: tinyint:1字节 -128~127 smallint:2字节 mediumint:3字节...,超过宽度可以存放,最终由数据类型所占字节决定 2.如果没有超过宽度,且有zerofill限制,会用0填充前置位的不足位 3.没有必要规定整形的宽度,默认设置的宽度就为该整形能存放数据的最大宽度 例如:...==>数据库优化 char:一定按规定的宽度存放数据,以规定宽度读取数据,通常更占空间 varchar:首先根据数据长度计算所需宽度,并在数据开始以数据头方式将宽度信息保存起来,是一个计算耗时过程,首先读取宽度信息
,格式n】from 表名;】 详解: 一 MySQL数据类型介绍 MySQL支持多种数据类型,主要有数值类型、日期类型、时间类型和字符串类型。...1 整数类型 数据类型主要用来存储数字,MySQL提供多种可供选择的整数类型,用整数作为数据类型的字段可以设置auto_increment自增约束条件。...案例 创建数据库db_demo2,创建表tb_temp1,其中包含字段a、b、c、d、e的数据类型分别为tinyint、smallint、mediumint、int(Integer)、bigint,SQL...案例 创建数据表tb_temp2,其中包含字段x、y、z的数据类型依次为float(5,1)、double(5,1)和decimal(5,1),向表中插入数据5.12、5.15和5.123,SQL语句:...D表示日,可以取0~34之间的值。在插入数据库时D被转换为小时保存(D*24+HH)。 'HHMMSS'格式的数值,会自动分成HH:MM:SS但各自有取值范围,超过则输入不合法。
领取专属 10元无门槛券
手把手带您无忧上云