MySql cmd下的学习笔记 —— 有关建立表的操作(有关于数据类型)
(01)建表的过程实际上是 声明字段 的过程
一. 列类型(字段):
存储同样的数据时,不同的列类型,所占据的空间和效率是不一样的,这就是建表时要考虑的意义。
二.MySQL三大列类型
数值型
整型
tinyint
占据空间:1个字节
存储范围:0 - 255, -128 - 127
smallint
占据空间:2个字节
储存范围:-32768 - 32768, 0 - 65535
int
占据空间:4个字节
储存范围:-2147483648 - 2147483647
0 - 4294967295
(02)先建立一张表

添加一条记录

age的范围在(-128 - 127)



增加一列


可以看出加入unsigned后, 表示为无符号类型, 范围在(0 - 255)之间
二. 小数型:
float(小数的总位数,小数点右边的位数)(浮点型)
例:float(6,2)表示:9999.99

定点型:decimal()
把整数部分和小数部分分开存储,比float精确

但float有时会有损精度
https://blog.csdn.net/lingmao555/article/details/48391763
中有具体讲解:
字符型
char型
char(6) 定长字符串
char 和 varchar 分别为定长型和变长型
char 优点:查询速度快
缺点:耗费内存
varchar 优点:耗费内存少
缺点:查询速度相对慢

char 与 varchar 的区别


可以看出varchar右侧有一个空格
说明了char类型,如果不够M个字符,内部用空格补齐。取出时把右侧空格删除,如果右侧有空格会自动删除
Text型: 文本类型,可以储存大的文本段,但搜索速度慢
(不需加默认值)



blob 为二进制类型,用来储存图像,音频等二进制信息
意义:二进制 0-255都有可能出现
比如一张图片有0xFF字节,在ascII表中认为非法,在入库时,被过滤了
时间类型
date类型


date 存储范围 1000-01-01 —— 9999-12-31
time类型 (范围:-838:59:59 —— 838:59:59)

datetime类型(储存范围: '1000-01-01 00:00:00 ——9999-12-31 23:59:59')
储存形式 YYYY-mm-dd HH:ii::ss
MySql cmd下的学习笔记 —— 有关建立表的操作(有关于数据类型)的更多相关文章
- MySql cmd下的学习笔记 —— 有关建立数据库的操作(连接Mysql,建立数据库,删除数据库等等)
(01) 连接数据库 mysql -uroot -p 之后输入密码 ******.(由于我的密码设置的是111,所以输入的是111) (02) 退出数据库 exit (03) 查看数据库 show d ...
- MySql cmd下的学习笔记 —— 有关多表查询的操作(多表查询练习题及union操作)
先建立一张 m 表 mysql> create table m ( -> mid int, -> hid int, -> gid int, ), -> matime da ...
- MySql cmd下的学习笔记 —— 有关子查询的操作(where型,from型,exists型子查询)
先找到goods表 查询goods_id最大的商品 where型的子查询 查询goods_id最大的商品(不能用排序) 把两步写成一步,就是子查询 from型子查询 查找出每种cat_id下goods ...
- MySql cmd下的学习笔记 —— 有关视图的操作(建立表)
在查询中,我们经常把查询结果当成临时表 view可以看成是一张虚拟表,是表通过某种运算得到的一个投影 在建立视图时,不需要指定视图的列名与列类型 红框内的为select选择语句 蓝框内的与建表语句类似 ...
- MySql cmd下的学习笔记 —— 有关表的操作(对表中数据的增,删,改,查)
(知识回顾) 连接数据库 mysql -uroot -p111 先建立一个新库 create database test1; use test1; 由于今天的主要内容是表的操作,建立表的详细过程不是本 ...
- MySQL第五个学习笔记 该数据表的操作
MySQL在创建表,创建.frm文件保存表和列定义.索引存储在一个.MYI(MYindex)且数据存储在有.MYD(MYData)扩展名的文件里. 一.用SHOW/ DESCRIBE语句显示数据表 ...
- MySql cmd下的学习笔记 —— 有关select的操作(in, and, where, like等等)
为方便本节学习, 请先自行建立本表: 建一个商品表: create table goods ( -> goods_id mediumint(8) unsigned not null auto_i ...
- MySql cmd下的学习笔记 —— 有关修饰器的知识(trigger)
关于触发器的理解: 进行数据库应用软件的开发时,有时我们碰到表的某些数据的改变时,希望同时 引起其他相关数据改变的需求,利用触发器就能满足这样的需求. 触发器能在表中的某些特定数据变化时自动完成某些查 ...
- MySql cmd下的学习笔记 —— 引擎和事务(engine,transaction)
engine 引擎就是MySQL存储数据的不同方式 myisam 插入速度快 支持全文索引 innoDB 插入速度慢 支持事务安全 假设两人同时购买火车票,两人同时看到只有一张火车票,几乎同时下单 或 ...
随机推荐
- 函数式编程 lodash 常用api
1.forEach _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { console.log(key); }); _.forEach([3,4] ...
- Codeforce 886 Технокубок 2018 - Отборочный Раунд 3 C. Petya and Catacombs(结论题)
A very brave explorer Petya once decided to explore Paris catacombs. Since Petya is not really exper ...
- SpringCloud之Hystrix断路器以及dashboard 属性详解
1.自定义hystrixCommand: https://blog.csdn.net/u012702547/article/details/78032191?utm_source=tuicool&am ...
- (JAVA对进制的运算)A + B Again hdu2057 要复习
(置顶,复习)A + B Again 链接:http://acm.hdu.edu.cn/showproblem.php?pid=2057 Time Limit: 1000/1000 MS (Java/ ...
- vbox的桥接网络
直接连接到了外网上,宿主机可以访问虚拟机,但是虚拟机不可以访问宿主机.缺点:宿主机没有网络时,将不能ping通. 宿主机:win10 网络:无线 虚拟机系统:centos6.5 vbox版本:6.0. ...
- 解决python安装错误问题
遇到的问题描述: An error occurred during the installation of assemblyA Microsoft.VC90. CRT, version=9-0.307 ...
- Ajxa用在哪些方面(六)
Ajax只有在适当的地方才会用到,也即需要在后台进行大量数据处理(充当消息通知机制),需要频繁的定时或不定时从服务器中读取数据的时候.1.比如我们常接触电子邮件系统中,因为电子邮件系统一般都由电子邮件 ...
- vue init 解决办法
/由于windows系统的某方面问题,vue脚手架安装可能会出现第一证书丢失 // 报错:vue-cli · Failed to download repo vuejs-templates/webpa ...
- hadoop 伪分布式搭建
下载hadoop1.0.4版本,和jdk1.6版本或更高版本:1. 安装JDK,安装目录大家可以自定义,下面是我的安装目录: /usr/jdk1.6.0_22 配置环境变量: [root@hadoop ...
- 2017-12-15python全栈9期第二天第七节之数字转换成布尔值
#!/user/bin/python# -*- coding:utf-8 -*-print(bool(2))