mysql基础
-
12-十二、MySQL int(10) 与 int(11) 的区别
不知道大家是不是和我一样,每次给有个列添加 int(11) 的时候都会想,会不会是 int(10) ,偶尔也会发神经的想,如果 int(32) 这样的可否? 这个纠结,恐怕我写完读…
-
16-十六、MySQL 中数据类型的默认值 – default 约束
MySQL 中,所有的数据类型,都可以显式或隐式的拥有默认值。 我们可以使用 DEFAULT 约束显式的为列指定一个默认值。比如 CREATE TABLE t1 ( i INT D…
-
15-十五、详解 MySQL 中的位类型 ( bit )
使用 MySQL 这么多年,这几天是我第一次知道 MySQL 竟然存在 BIT 这种数据类型。位模式的操作,最大名鼎鼎的应该是 「 布隆过滤器 ( Bloom Filter ) 」…
-
14-十四、雪上加霜的 MySQL 浮点类型 ( float 和 double )
在 MySQL 中,有一条忠告,就是 「 不要使用浮点类型,不要使用浮点类型,不要使用浮点类型 」,如果真要使用,那么也请使用 DECIMAL 类型。 为什么呢 ? 因为浮点类型的…
-
13-十三、MySQL 数值类型溢出处理
来,考考大家一个问题,在 MySQL 中当某一列设置为 int(0) 时会发生什么 ? 为了演示这个问题,我们先要创建一个表 DROP TABLE IF EXISTS `na`; …
-
11-十一、MySQL 也有精确精度的浮点数 ( 上 )
MySQL 支持 SQL 标准中提到的所有数值数据类型,这些类型包括精确的数值数据类型,例如 INTEGER、SMALLINT、DECIMAL 和 NUMERIC,也包括一些 近似…
-
10-十、臭名昭著的 MySQL ENUM 类型 ( 下 )
使用 MySQL ENUM 作为列的数据类型有两个主要的好处,一是使得数据更紧凑进而节省空间,二是更好的可阅读性。但是,享受这些好处的同时,也要承担 ENUM 所带来的各种负面影响…
-
09-九、臭名昭著的 MySQL ENUM 类型 ( 上 )
MySQL 中,对于那些取值只有两三个,或者五个以内的值,想必,大多数人使用的应该都是 ENUM 类型吧,而剩下的另一部分人,应该都是使用 TINYINT(1) 。 我,就是剩下的…
-
08-八、傻傻分不清的 DATE、DATETIME 和 TIMESTAMP ( 下 )
前一章节我们有提到 MySQL 服务的系统变量 explicit_defaults_for_timestamp 对 timestamp 类型的影响,知道禁用该系统变量时,times…
-
07-七、傻傻分不清的 DATE、DATETIME 和 TIMESTAMP ( 中 )
不使用 date 、datetime 和 timestamp 三个类型的另外一个非重要原因,是一直记不住如何设置 datetime 和 timestamp 的默认值。 一般情况下,…
-
06-六、傻傻分不清的 DATE、DATETIME 和 TIMESTAMP ( 上 )
在我十年的 IT 生涯中,好像几乎没有使用过 MySQL 的 date 、datetime 和 timestamp 几种数据类型。 究其原因,有两个:一是傻傻的分不清 DATE、D…
-
05-五、被 MySQL sql_mode 深深伤害( 下 )
当我们要重新设置 MySQL sql\_mode 的时候,可能看到那一串长长的列表就会患头痛病,这哪个是哪个啊,哪个是重要的啊?哪个是可以缺少的啊? 我们就会想要呼唤一个简单的版本…
-
04-四、被 MySQL sql_mode 深深伤害( 中 )
前一章节我们讲解了 MySQL sql_mode 的一些概要的知识,讲解了使用 select @@sql_mode; 语句可以查看当前 MySQL 连接的 sql_mode…
-
03-三、被 MySQL sql_mode 深深伤害( 上 )
常在海边走,哪有不湿鞋,用 MySQL 多了,就常常会遇见各种错误,尤其是不同版本带来的错误。 而经常刺痛我们的,应该数 MySQL 的 sql_mode 了,比如在 记不住的 M…
-
02-二、记不住的 MySQL DISTINCT 的用法 ( 下 )
上一章节我们学习了 SQL DISTINCT 的位置对结果的影响。但我们还没深入到 MySQL DISTINCT 关键字的核心用法,同时,我们也还未讲解 DISTINCT 有无小括…
-
01-一、记不住的 MySQL DISTINCT 的用法 ( 上 )
即使在自己记忆力最好的时候,也是记不住 MySQL DISTINCT 的用法。我一直对这个记不住好奇,想不明白,为什么。 前几天翻 MySQL 手册,看到 DISTINCT 又发现…