MySQL学习第六天 学习MySQL基本数据类型

2019-01-03 23:05:53于丽

ENUM类型在系统内部可以存储为数字,并且从1开始用数字做索引。一个ENUM类型最多可以包含65536个元素,其中一个元素被MySQL保留,用来存储错误现的值是合法输入,除此之外其它任何输入都将失败。这说明通过搜索包含空字符串或对应数字索引为0的行就可以很容易地找到错误记录的位置。

 (2)SET类型

SET(“member", "member2″, … “member64″)

SET数据类型为指定一组预定义值中的零个或多个值提供了一种方法,这组值最多包括64个成员。值的选择限制为列定义中声明的值。

SET类型与ENUM类型相似但不相同。SET类型可以从预定义的集合中取得任意数量的值。并且与ENUM类型相同的是任何试图在SET类型字段中插入非预定义的值都会使 MySQL插入一个空字符串。如果插入一个即有合法的元素又有非法的元素的记录,MySQL将会保留合法的元素,除去非法的元素。

一个 SET 类型最多可以包含64项元素。在SET元素中值被存储为一个分离的“位”序列,这些“位”表示与它相对应的元素。“位”是创建有序元素集合的一种简单而有效的方式。并且它还去除了重复的元素,所以SET类型中不可能包含两个相同的元素。希望从SET类型字段中找出非法的记录只需查找包含空字符串或二进制值为0的行。

复合数据类型的例子我们会在以后的博文中使用到,这里不再进行举例。

五、总结

       通过对每种数据类型的用途,物理存储,表示范围等有一个概要的了解。这样在面对具体应用时,就可以根据相应的特来来选择合适的数据类型,使得我们能够争取在满足应用的基础上,用较小的存储代价换来较高的数据库性能。

      选用数据类型的原则:

      1)选择最小的可用的类型;

      2)从速度方面考虑,选择固定的列  使用CHAR类型;

      3)从节省空间考虑,选择动态的列,使用VARCHAR类型。

      高性能数据库设计原则:

      第一步:大致确定字段的数据类型,数字,字符串,时间等,比较直观。

      第二步:确定特定的类型,比如说 :数字里有TINYINT、SMALLINT、INT、LONGINT等,选择最合适的一个(更小通常更好)

      第三步:如有必要,请为字段设置默认值。

      当然,索引优化肯定是必不可少的,不过这属于设计表完成之后的优化范围了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易采站长站。

您可能感兴趣的文章:

MySQL 数据类型 大全MySQL 数据类型 详解Mysql中返回一个数据库的所有表名,列名数据类型备注MySQL日期数据类型、时间类型使用总结MySQL笔记之数据类型详解MySQL数据类型varchar详解深入了解mysql的4种常用、重要的数据类型与MSSQL对比学习MYSQL的心得(四)--BLOB数据类型mysql 数据类型TIMESTAMPMySQL数据类型和常用字段属性总结