MYSQL数据库学习----MYSQL数据类型
一切数据在计算中都是以二进制形式存储,而8位二进制数就表示1个字节。
通常我们说一种数据类型占多少字节,就是说这种数据类型可以表示多少位的二进制数,同时二进制数可以转换为十进制数,进而得到这种数据类型可以表示多大的十进制数!
打个比方,MYSQL中的int型数据类型,大家都知道int型可以表示4个字节,那就是32位二进制,32位二进制就能表示无符号十进制数0~4394967295.
所以我们给这个int数据类型赋值一个在0和4394967295之间的数就可以了,如果超出这个范围系统就会报错。
MYSQL数据类型分为几种:
一:整型
数据类型 (显示宽度)
| 整型类型 | 字节数 | 无符号数的取值范围 | 有符号数的取值范围 |
| INT | 4 | 0~4394967295 | -2147483648~2147483647 |
一般INT型在我们平常用的时候就足够我们使用了,整型中还有一些不常用的:TINYINT(1),SMALLINT(2), MEDIUMINT(3),INTEGER(4),BIGINT(8).
二:浮点数和定点数
数据类型 (M, D)
| 整型类型 | 字节数 | 负数的取值范围 | 非负数的取值范围 |
| FLOAT | 4 |
-3.402823466E+38~ -1.175494351E-38 |
0和1.175494351E-38~ 3.402823466E+38 |
M参数称为精度,表示数据总长度,不算小数点。
D参数称为标度,指小数点后面的长度。
其他的浮点型还有DOUBLE(8),定点型DECIMAL(M, D)或者DEC(M, D),由于MYSQL中的浮点型数据会出现误差,如果需要精确的话建议使用DEC定点型。
三:日期和时间类型
| 整型类型 | 字节数 | 取值范围 | 零值 |
| DATETIME | 8 |
1000-01-01 00:00:00~ 9999-12-31 23:59:59 |
0000-00-00 00:00:00 |
表示日期时间一般都是用DATETIME类型,还有一些不常用的
YEAR(1): 只表示年份,范围1901~2155
DATE(4): 只表示年月日,范围1000-01-01~9999-12-31
TIME(3): 表示小时,分,秒。范围-838:59:59~838:59:59
TIMESTAMP(4): 格式和DATETIME一样,但是表示的范围要小。
四:字符串类型
字符串类型(M)
CHAR(M): 固定为M个字节长度存储字符串。
VARCHAR(M): 最长M个字节长度,实际长度为存入字符串的长度+1。
TEXT(M): 最长为65535字节,实际存储空间是存入字符串的长度+2。
ENUM('VALUE1','VALUE2',...): 枚举类型,范围只能是列表中的值,MYSQL存入的是列表中的序列号,如果插入的值不是列表中有的就会报错。列表中值最多65535个
SET('VALUE1','VALUE2',...): 和枚举类型差不多,但是列表中的值最多64个。
五:二进制类型
待续。。。
MYSQL数据库学习----MYSQL数据类型的更多相关文章
- MYSQL数据库学习----MYSQL函数
MYSQL函数分为几种 数学函数 字符串函数 日期和时间函数 条件判断函数 系统信息函数 加密函数 格式化函数 一:数学函数 主要使用的几个数学函数 1 ABS()----绝对值函数 eg. SELE ...
- MySQL数据库学习: 01 —— 数据库的概述
壹 概述 一 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件). 易混淆:人们常常用“数据库”这个词语来代表他们使 ...
- MYSQL数据库学习笔记1
MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Mysql数据库学习笔记之数据库索引(index)
什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...
- mysql数据库,当数据类型是float时,查询居然查询不出数据来
mysql数据库,当数据类型是float时,查询居然查询不出数据来,类似如下: 以后mysql数据库不用float类型,而double类型可以查得出来.
- MySQL数据库学习----理论基础
一:数据存储发展过程 1. 人工管理阶段 主要存储在纸带.磁带等介质中,手工记录,效率低下. 2. 文件系统阶段 存储在计算机磁盘中,以文件形式出现,数据管理变得简单,但是数据没有结构化处理,不易于查 ...
随机推荐
- 1.关于无rospy.spin()调用多次callback 2. subscrib后面语句和callback函数运行顺序
#!/usr/bin/env python import rospy from bzrobot_msgs.msg import bzr_WheelLinearVels #from threading ...
- vueSSR渲染原理
优点:利于搜索引擎,解决白屏问题,因为正常情况下在index.html文件中只有一个简单的标签,没有内容,不利于爬虫搜索 场景:交互少,数据多,例如新闻,博客,论坛类等 原理:相当于服务端前面加了一层 ...
- linux 每天备份mysql数据
原文:http://www.open-open.com/code/view/1433587311890 前言: 如果你的数据库文件较大,可能备份的时候需要占用很多服务器资源,所以站长要尽量选择访客最少 ...
- Go -- RPC 之 Thrift
Thrift 简介: Thrift 是一款高性能.开源的 RPC 框架,产自 Facebook 后贡献给了 Apache,Thrift 囊括了整个 RPC 的上下游体系,自带序列化编译工具,因为 Th ...
- Go -- 一致性哈希算法
一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用 ...
- 【Todo】ssh的原理和实践
有空的时候补充,可以参考 http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html http://www.ruanyifeng.com/ ...
- Android安全机制介绍
Android的安全机制包含下面几个方面: • 进程沙箱隔离机制. • 应用程序签名机制. • 权限声明机制. • 訪问控制机制. • 进程通信机制. ...
- Andriod DiskLruCache的使用案例
DiskLruCache是谷歌推荐的用来实现硬盘缓存的类,本案例将对DiskLruCache的基本用法做一个总结,包括:创建缓存.查找使用缓存.移除缓存等等. 实现效果图 创建DiskLruCache ...
- HDU 2009 整除的尾数 题解
Problem Description 一个整数,仅仅知道前几位,不知道末二位.被还有一个整数除尽了.那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包括二个整数a,b(0&l ...
- linux系统之shell编程-正則表達式
shell编程正則表達式: 1:元字符 [ ] . * ? + ( ) | { } ^ $ 2 : [a-z0-9] 表示匹配随意数字和字母的一个 3 : [^a-z] ...