MySQL-快速入门(2)数据类型
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)数据类型的更多相关文章
- MySql基础笔记(一)Mysql快速入门
Mysql快速入门 一)基本概念 1)表 行被称为记录,是组织数据的单位.列被称为字段,每一列表示记录的一个属性. 2)主键 主键用于唯一的标识表中的每一条记录.可以定义表中的一列或者多列为主键, 但 ...
- MySQL 快速入门教程
转:MySQL快速 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数据 ...
- MySQL 快速入门(一)
目录 MySQL快速入门 简介 存储数据的演变过程 数据库分类 概念介绍 MySQL安装 MySQL命令初始 环境变量配置 MySQL环境变量配置 修改配置文件 设置新密码 忘记密码的情况 基本sql ...
- MySQL快速入门(二)
目录 MySQL快速入门(二) 约束条件 自增 自增的特性 主键 外键 级联更新/删除 表与表之间的关系 外键约束 操作表方法 查询关键字 练习数据 select··from where 筛选 gro ...
- Python 3 快速入门 1 —— 数据类型与变量
本文假设你已经有一门面向对象编程语言基础,如Java等,且希望快速了解并使用Python语言.本文对重点语法和数据结构以及用法进行详细说明,同时对一些难以理解的点进行了图解,以便大家快速入门.一些较偏 ...
- MySQL 快速入门
MySQL的相关概念介绍 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格 ...
- Mysql快速入门(看完这篇能够满足80%的日常开发)
这是一篇mysql的学习笔记,整理结合了网上搜索的教程以及自己看的视频教程,看完这篇能够满足80%的日常开发了. 菜鸟教程:https://www.runoob.com/mysql/mysql-tut ...
- SQL快速入门 ( MySQL快速入门, MySQL参考, MySQL快速回顾 )
SQL 先说点废话,很久没发文了,整理了下自己当时入门 SQL 的笔记,无论用于入门,回顾,参考查询,应该都是有一定价值的,可以按照目录各取所需.SQL数据库有很多,MySQL是一种,本文基本都是SQ ...
- 阿里云RDS for MySQL 快速入门——笔记
1初始化配置 1.1设置白名单 创建RDS实例后,需要设置RDS实例的白名单,以允许外部设备访问该RDS实例.默认的白名单只包含默认IP地址127.0.0.1,表示任何设备均无法访问该RDS实例. 设 ...
- MySQL快速入门及常用命令
数据库 笔记内容 SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,F ...
随机推荐
- php目录函数操作,以及使用递归
opendir 找到对应的目录 将目录中所有文件全部读入到内存(包含子文件夹下的所有文件) 将目录指针指向第一个文件 readdir 读取当前指针所指向的文件的文件名 2.将目录指针向下移动一位 ch ...
- JAVA笔记13-异常处理Exception
掌握:一个图(分类).五个关键字(try catch finally throws throw) 一.概念 定义: 异常指的是运行期出现的错误(如除0溢出,空指针,数组/字符串下标越界,所要读取的文件 ...
- ASP教程:gb2312和utf-8乱码问题解决
文章为转载:https://www.xp.cn/b.php/31663.html 尊重作者版权 今天做网站的时候,客户要一个博客,于是就利用了本博客所用的程序pjblog.经常做网站的人都知道,在同一 ...
- Android图片优化指南
图片作为内存消耗大户,一直是开发人员尝试优化的重点对象.Bitmap的内存从3.0以前的位于native,到后来改成jvm,再到8.0又改回到native.fresco花费很多精力在5.0系统之前把B ...
- BZOJ1491 Red is good
题目链接:Click here Solution: 考虑设\(f(i,j)\)表示当前还有\(i\)张红牌,\(j\)张黑牌时的期望收益 易得状态转移方程:\(f(i,j)=\frac{i}{i+j} ...
- OI多项式 简单学习笔记
咕咕咕 先开个坑(其实是存模板来了) 一些特别简单的前置东西qwq 复数的计算 复数相加:向量相加,复数相乘.复数相乘:模长相乘,旋转量相加(就是复平面坐标轴逆时针旋转的角度) (当然也可以直接使用c ...
- 【转载】自动化运维系列之Cobbler给Openstack节点安装操作系统
preface 我们在一篇博文知道了如何搭建Cobbler,那么下面就通过Cobbler来安抓Openstack所有节点吧. 服务器配置信息如下: 主机名 IP 角色 Cobbler.node.com ...
- 网络相关辅助类NetUtils
package yqw.java.util; import java.net.NetworkInterface;import java.util.ArrayList;import java.util. ...
- mac 的 quickTime Player 设置播放速度
按住 option 点击 下一个视频的图标每次调整幅度为0.1,大于 1.9 声音会消失. 按住 option+J 调慢播放速度 option+L 调快播放速度 每次调整幅度为0.1
- 使用idea上传项目到码云
首先,基本流程是这样的: 1.在码云生成SSH公钥 2.在码云创建项目 3.克隆项目到本地 4.在本地创建项目 5.搭建本地仓库,关联远程仓库 ...