MySQL操作:常用数据类型

一、常用数据类型

数据类型是指某个变量或值的类型,通常情况下,绝大多数的变量都属于数值型、字符型和日期时间型三种。

1. 数值型

数值型是指变量或值以数字的形式呈现,通常情况下这些数字在经过某种四则运算后,也是具有含义的。例如用户的收入、年龄、净资产、消费频次、可支配收入等,它们都属于数值型数据。
在这里插入图片描述
数值型数据可以细分为整数型和浮点型(即实数型),以上表格中的前5种类型均为整数型,后2种为浮点型。有两点需要说明:

  1. 如果在实际应用中,限定变量为非负的数值型时,则必须在数据类型签名加入关键词“UNSIGNED”(如非负的微小整型,需要表示为UNSIGNED TINYINT)

  2. 如果使用DECIMAL表示浮点型,需要制定参数n和k的值,其中n表示浮点数值中所包含的所有数值个数,k表示浮点数值中小数位的数值个数

     例如,DECIMAL(5,2),表示数值最多包含5个数字,之中小数位占2位。
     换句话说,DECIMAL(n,k)所表示的数值范围为[负n-k个9点k个9,正n-k个9点k个9]。
     例如DECIMAL(5,2),表示的数值范围为[-999.99,999.99]
    

二、字符型

字符型数据只要是指离散的类别型数据,并且这些数据以字符串的形式呈现,如用户的姓名、性别、汽车的型号、产品的名称等。
在这里插入图片描述

  1. 如果变量的数据类型为ENUM时,表示该变量说对应的每一个观测值最多可以在65,535个不同的值中选择一个(例如每一个用户的性别只能从男或女中挑选一个,类似于单选问题),并且这些数字必须提前通过ENUM类型制定,即('男‘,‘女’)。关于该类型数据需要强调一点,如果枚举值为字符型的1,2,3三种值,即(‘1’,‘2’,‘3’),则在筛选查询时,必须使用字符型的1,2,3,千万不能丢掉引号,否则查询结果将会有误。
  2. 如果变量的数据类型为SET时,表示该变量所对应的每一个观测值最多可以在65个不同的值中选择多个(例如,每一个用户的兴趣爱好可以充多个不同的值中挑选几个,类似于多选问题),并且这些值需要通过SET类型指定,即SET(‘篮球’,‘足球’,‘乒乓球’,‘游泳’,‘骑行’)。
  3. 如果变量的数据类型为CHAR(n)VARCHAR(n),表示该变量的每一个观测值最多可以存储n个长度的字符;如果实际长度超过指定长度,它们均会将超过的部分截断。所不同的是,如果实际的支付长度小于指定长度:CHAR(n)会以空格填满;而对于后者VARCHAR(n)来说,该是多少个的长度就是多少的长度,并不会用空格补齐。需要强调的是,对于MySQL 5.0及以后的版本来说,类型中的n代表的是字符长度,而非字节个数,所以每一个中文也是代表一个字符长度。

三、日期时间型

例如注册用户的出生日期、学员的结业日期、超市小票的订单时间、用户的登录时间等都属于日期时间型数据。
在这里插入图片描述

四. 数据类型的引用参加

通常在数据库操作中,有3种情况会设计数据类型,分别是:

  • 新建数据表
  • 查询时的类型转换
  • 以及数据表中的字段类型的更改

如果需要通过手工方式,新建一张数据表时,表中的字段名称和字段类型是必须要指定的;
在查询过程中,当原始数据类型无法参与运算时,就需要进行数据类型转换(例如,字符型的日期无法与整数相加得到正确的日期值);
如果原始表中某个字段的数据类型,不符合实际情况时,可以考虑使用修改数据类型的语法,直接对原始表中字段实现类型的更改。

发布了35 篇原创文章 · 获赞 4 · 访问量 5283

猜你喜欢

转载自blog.csdn.net/fightingoyo/article/details/105687541
今日推荐