mysql 开发基础系列2 整型数据类型
Mysql 的数据类型

1. 对整数类型, Mysql 还支持类型名称后面的小括号内指定的显示宽度,例如int(5) 表示宽度小于5位时填满宽度,如果不显示指定宽度默认是int(11),一般配合zerofill使用下面来描述下
-- 创建表t1 有id1和id2字段,指定数值宽度分别为int 和int(5)
CREATE TABLE t1(id1 INT, id2 INT(5));
-- 在里面都插入1
INSERT INTO t1 VALUES(1,1);
-- 查询格式没有异常, 值是 id1=1, id2=1
SELECT * FROM t1;
-- 分别修改id1 和id2字段类型, 加入 zerofill参数
ALTER TABLE t1 MODIFY id1 INT ZEROFILL;
ALTER TABLE t1 MODIFY id2 INT(5) ZEROFILL;
-- 再次查询时 id1=0000000001, id2=00001
SELECT * FROM t1;
2. 整数类型还有一个属性 auto_increment。产生唯一标识,值一般从1开始,每行增加1. 定义为not null , 并且定义primary key或unique键如下:
CREATE TABLE a1 (id INT AUTO_INCREMENT NOT NULL,PRIMARY KEY);
CREATE TABLE a1 (id INT AUTO_INCREMENT NOT NULL,PRIMARY KEY(id));
CREATE TABLE a1 (id INT AUTO_INCREMENT NOT NULL,UNIQUE(id));
3. 对于小数表示, mysql分为浮点数和定点数
浮点数包括float,double。 定点数decimal 它是以字符串形式存放的,比浮点数精确, 用于倾向等精度高的数据。
浮点数和定点数都可以加(M,D) 如:float(7,4) 值-999.9999 保存时进行了四舍五入, 如果插入是999.00009 ,值结果是999.0001。注意浮点数据后面跟(M,D)是非标准用法。
定点数deciaml不指定精度时,默认整数为10, 默认小数位为0。
mysql 开发基础系列2 整型数据类型的更多相关文章
- mysql 开发基础系列12 选择合适的数据类型(上)
一. char 与varchar比较 在上图的最后一行的值只适用在"非严格模式",关于严格模式后面讲到.在“开发基础系列4“ 中讲到CHAR 列删除了尾部的空格.由于char是固定 ...
- mysql 开发基础系列10 存储引擎 InnoDB 介绍
一. 概述: InnoDB存储引擎提供了具有提交,回滚,和崩溃恢复能力的事务安全,对比MYISAM 的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引.它的特点有如下: ...
- mysql 开发基础系列13 选择合适的数据类型(下)
一. BloB和Text 1. 合成索引 合成索引可以提高大文本字段BLOB和Text的查询性能, 合成索引是在表中增加一个字段存放散列值,这种技术只能用于精确匹配的查询,可以使用md5()或sha ...
- mysql 开发基础系列4 字符数据类型
字符串类型 1.1 CHAR 和VARCHAR 类型 CHAR 列的长度固定为创建表时声明的长度,VARCHAR 列中的值为可变长字符串.在检索的时候,CHAR 列删除了尾部的空格,而VARCHAR ...
- mysql 开发基础系列3 日期数据类型
日期类型 如果要用来表示年月日,通常用DATE 来表示. 如果要用来表示年月日时分秒,通常用DATETIME 表示. 如果只用来表示时分秒,通常用TIME 来表示. TIMESTAMP表示格式 :YY ...
- mysql 开发基础系列22 SQL Model
一.概述 与其它数据库不同,mysql 可以运行不同的sql model 下, sql model 定义了mysql应用支持的sql语法,数据校验等,这样更容易在不同的环境中使用mysql. sql ...
- mysql 开发基础系列17 存储过程和函数(上)
一. 概述 存储过程和函数是事先经过编译并存储在数据库中的一段sql语句集合,可以简化应用开发人员的很多工作,减少数据在数据库与应用服务器之间的传输,提高数据处理效率是有好处的.存储过程和函数的区别在 ...
- mysql 开发基础系列20 事务控制和锁定语句(上)
一.概述 在mysql 里不同存储引擎有不同的锁,默认情况下,表锁和行锁都是自动获得的,不需要额外的命令, 有的情况下,用户需要明确地进行锁表或者进行事务的控制,以便确保整个事务的完整性.这样就需要使 ...
- mysql 开发基础系列18 存储过程和函数(下)
1. 光标的使用(游标) 在存储过程和函数中可以使用光标对结果集进行循环的处理,光标使用包括光标的声明,open ,fetch,close. 下面在存储过程中使用一个光标, 这个举例中光标里的逻辑不重 ...
随机推荐
- javascript和c#aes加密方法互解
关键信息如下. javascript function Encrypt() { var key = CryptoJS.enc.Utf8.parse('8080808080808080'); var i ...
- opencv的安装
网上搜了好多文章安装opencv3.2.0都未能成功,写的也个不相同,后来找到了opencv官网的教程,看了后才发现,这上面才是最详细的. 于是按照opencv官网教程安装,安装的一半就中断了.经过苦 ...
- Python Day 6
阅读目录: 内容回顾: 深浅拷贝: 元组: 字典 集合 ##内容回顾 #1.数字类型 int | float | bool | complex #2.字符串 #常规操作: -- 索 ...
- 20175229张智敏 Arrays和String单元测试
Arrays和String单元测试 1.具体要求: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split A ...
- kali自定义分辨率(1920*1080)
运行一下两行代码: xrandr --newmode -hsync +vsync xrandr --addmode Virtual1 "1920x1080_60.00"
- Python开发——17.CSS
一.CSS 1.概述 CSS(Cascading Style Sheets),层叠样式表,用来控制网页数据的表现,使网页的表现与数据内容分离. 2.引入方式 (1)行内式 <body> & ...
- 【慕课网实战】三、以慕课网日志分析为例 进入大数据 Spark SQL 的世界
前置要求: 1)Building Spark using Maven requires Maven 3.3.9 or newer and Java 7+ 2)export MAVEN_OPTS=&qu ...
- servlet从mysql中取数据时出现的汉字编码问题
取出的汉字都是问号 之后根据网友提示在输出之前对response进行编码设置 正常显示
- python+pycharm环境搭建
1.下载python安装包 https://www.python.org/downloads/ 2.下载pycharm安装包. https://www.jetbrains.com/pycharm/do ...
- 几个简单的windows API
//将光标移动到x,y位置void gotoxy(int x, int y){ COORD c; c.X = x; c.Y = y; SetConsoleCursorPosition(GetStdHa ...