mysql常用注意事项

小数类型为 decimal,禁止使用 float 和 double。

说明: 在存储的时候,float 和 double 都存在精度损失的问题,很可能在比较值的时候,得到不正确的 结果。如果存储的数据范围超过 decimal 的范围,建议将数据拆成整数和小数并分开存储。
不要使用 count(列名)或 count(常量)来替代 count(*)
说明: count(*)是 SQL92 定义的标 准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关。 count(*)会统计值为 NULL 的行,而 count(列名)不会统计此列为 NULL 值的行。

使用ISNULL()来判断是否为NULL值。

说明: NULL 与任何值的直接比较都为 NULL
1) NULL<>NULL 的返回结果是 NULL ,而不是 false
2) NULL=NULL 的返回结果是 NULL ,而不是 true
3) NULL<>1 的返回结果是 NULL ,而不是 true
代码中写分页查询逻辑时,若 count 为 0 应直接返回
说明: 避免执行后面的分页语句。
业务上具有唯一特性的字段,即使是组合字段,也必须建成唯一索引。
说明: 不要以为唯一索引影响了 insert 速度,这个速度损耗可以忽略,但提高查找速度是明显的;另外, 即使在应用层做了非常完善的校验控制,只要没有唯一索引,根据墨菲定律,必然有脏数据产生。

版权声明:本文为sunshine151原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。