1、MySQL支持多种数据类型:

1》数值类型:整数类型tinyint、smallint、mediumint、bigint、int;浮点小数类型float、double;定点小数类型decimal。

2》日期 / 时间类型:year、time、date、datetime、timestamp。

3》字符串类型:char、varchar、binary、varbinary、blob、text、enum、set。

2、各种数据类型详解:

1》整数类型:

2》浮点数类型和定点数类型

MySQL中使用浮点数和定点数来表示小数。浮点数有两种:单精度浮点数(float)和双精度浮点数(double)。定点数只有一种类型:decimal。

浮点数类型和定点数类型都可以使用(M,N)来表示,其中M称为精度,表示总共的位数;N称为标度,是表示小数的位数。

decimal类型不同于float和double,decimal实际是以串存放的,decimal可能的最大取值范围与double一样,但是其有效的取值范围由M和D的值决定。如果改变M而固定D,则其取值范围将随M的变大而变大。其存储占用的空间也不是固定的,是M+2个字节。

数据类型 有 / 无符号 最小值 最大值
float类型取值范围 有符号的取值范围 -3.402823466E+38 -1.175494351E-38
无符号的取值范围 0和1.175494351E 3.402823466E+38
double类型取值范围 有符号的取值范围 -1.7976931348623157E+308 -2.2250738585072014E-308
无符号的取值范围 0和2.2250738585072014E-308 1.7976931348623157E+308

不论是定点还是浮点类型,如果用户指定的精度超出精度范围,则会四舍五入进行处理。float、double在不指定精度时,默认会按照实际的精度(由计算机硬件和操作系统决定),decimal如果不指定精度,默认是(10,0)。

3》日期和时间类型

主要有:datetime、date、timestamp、time、year。

1>year:

  输入格式 范围 示例
以4位字符串或者4位数字格式表示year 'YYYY'或YYYY '1901'~'2155' 输入'2010'或2010
以2位字符串格式表示year '00'~'69'范围值转换为2000~2069;'70'~'99'转换为1970~1999。'0'和'00'作用相同,插入超过取值范围的值将被转换为2000。 '00'~'99'  
以2位数字表示year 1~69转换为2001~2069;70~99转换为1970~1999。但0值将为转换为0000,而非2000。非法year值都将转换为0000。 1~99  

2>time:

currrent_time / current_time():时间函数

now():时间函数

3>date类型

可以使用字符串类型和数字类型的数据插入,只要符合date类型的日期格式。其中年份可以简写YY,但世纪不确定,解析同year的缩写形式。

使用current_date / current_date()、now()。允许使用不严格的语法,其中的格式分割符可以是非标准的分隔符。

4>datetime类型

now()函数。允许使用不严格的语法,其中的格式分割符可以是非标准的分隔符。

5>timestamp类型:

4》文本字符串类型:文本字符串、二进制字符串

1> char(M)和varchar(M),在严格模式下,字段最多存储M个字符,只是char(M)会一直占用M个字符的存储空间,而varchar(M)则根据实际存储的字符个数N存储N+1个字符的空间。

2>text类型:tinytext、text、mediumtext、longtext

3>enum类型:可以插入枚举值、枚举值对应的序号

字段名 enum('value1','value2',...,'valueN');

4>set类型:字符串对象最为元素。

5》二进制字符串类型

二进制数据类型有:bit、binary、varbinary、tinyblob、blob、mediumblob、longblob。

1>bit类型:位字段类型。

2>binary和varbinary类型

3>blob类型

3、如何选择数据类型

MySQL-快速入门(2)数据类型的更多相关文章

  1. MySql基础笔记(一)Mysql快速入门

    Mysql快速入门 一)基本概念 1)表 行被称为记录,是组织数据的单位.列被称为字段,每一列表示记录的一个属性. 2)主键 主键用于唯一的标识表中的每一条记录.可以定义表中的一列或者多列为主键, 但 ...

  2. MySQL 快速入门教程

    转:MySQL快速 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数据 ...

  3. MySQL 快速入门(一)

    目录 MySQL快速入门 简介 存储数据的演变过程 数据库分类 概念介绍 MySQL安装 MySQL命令初始 环境变量配置 MySQL环境变量配置 修改配置文件 设置新密码 忘记密码的情况 基本sql ...

  4. MySQL快速入门(二)

    目录 MySQL快速入门(二) 约束条件 自增 自增的特性 主键 外键 级联更新/删除 表与表之间的关系 外键约束 操作表方法 查询关键字 练习数据 select··from where 筛选 gro ...

  5. Python 3 快速入门 1 —— 数据类型与变量

    本文假设你已经有一门面向对象编程语言基础,如Java等,且希望快速了解并使用Python语言.本文对重点语法和数据结构以及用法进行详细说明,同时对一些难以理解的点进行了图解,以便大家快速入门.一些较偏 ...

  6. MySQL 快速入门

    MySQL的相关概念介绍 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格 ...

  7. Mysql快速入门(看完这篇能够满足80%的日常开发)

    这是一篇mysql的学习笔记,整理结合了网上搜索的教程以及自己看的视频教程,看完这篇能够满足80%的日常开发了. 菜鸟教程:https://www.runoob.com/mysql/mysql-tut ...

  8. SQL快速入门 ( MySQL快速入门, MySQL参考, MySQL快速回顾 )

    SQL 先说点废话,很久没发文了,整理了下自己当时入门 SQL 的笔记,无论用于入门,回顾,参考查询,应该都是有一定价值的,可以按照目录各取所需.SQL数据库有很多,MySQL是一种,本文基本都是SQ ...

  9. 阿里云RDS for MySQL 快速入门——笔记

    1初始化配置 1.1设置白名单 创建RDS实例后,需要设置RDS实例的白名单,以允许外部设备访问该RDS实例.默认的白名单只包含默认IP地址127.0.0.1,表示任何设备均无法访问该RDS实例. 设 ...

  10. MySQL快速入门及常用命令

    数据库 笔记内容 SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,F ...

随机推荐

  1. 【Islands and Bridges】题解

    题目 题目描述 给定一些岛屿和一些连接岛屿的桥梁,大家都知道汉密尔顿路是访问每个岛屿一次的路线,在我们这个地图中,每个岛屿有个正整数的权值,表示这个岛屿的观赏价值.假设一共有N个岛屿,用Vi表示岛屿C ...

  2. CF1260F

    题目大意 一棵树,每个节点的权为L[i]~R[i],一棵树的贡献为\(\sum\limits_{h_{i} = h_{j}, 1 \le i < j \le n}{dis(i,j)}\),其中\ ...

  3. 使用bitmap实现对一千万个无重复的正整数(范围1~1亿)快速排序

    1 Bytes(字节) == 8 bit 1 KBytes == 1024 Bytes 思路: 1)申请长度为1亿的保存二进制位的数组 a, 2)通过位运算,将整数做为索引,将数组a对应的索引位置为1 ...

  4. node中controller的get和post方法获取参数

    1.get: const body = ctx.query; // get请求   2.post: const body = ctx.request.body; // post请求

  5. JSON.parse 测试

    第一种 报错 var t = JSON.parse(""); console.log(t); 第二种 正常 var t = JSON.parse('{"AA": ...

  6. 常见的NullPointerException总结

    NullPointerException在这里简称为NPE 通过一些实例总结下常见的NPE问题: 1. 自动拆箱抛NPE 实体类: public class User { private String ...

  7. CodeChef DGCD Dynamic GCD

    CodeChef题面 Time limit 210 ms Code length Limit //内存限制也不说一下,真是的-- 50000 B OS Linux Language limit C, ...

  8. 如何将python源文件打包成exe文件

    PyInstaller是一个十分有用的第三方库,它能够在Windows.Linux.Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包,Python 程序可以在没有安装 Py ...

  9. Python语言中enumerate()及zip()函数的使用例子

    在Python编程语言中,enumerate()及zip()是两个常用的内置函数,这两个函数功能类似,但又有所区别,下面通过两个例子分别进行说明. enumerate()函数 该函数在字面上是枚举.列 ...

  10. [CSP-S模拟测试]:数列(数学)

    题目传送门(内部题95) 输入格式 第一行三个整数$n,a,b$,第二行$n$个整数$x_1\sim x_n$表示数列. 输出格式 一行一个整数表示答案.无解输出$-1$. 样例 样例输入:2 2 3 ...