
mysql
文章平均质量分 74
经典鸡翅
京东程序员一枚,用心写文章,分享知识。关注我,带你探究大厂的面试套路。
展开
-
你还不知道mysql中空值和null值的区别吗?
前言最近发现带的小伙伴写sql对于空值的判断方法不正确,导致程序里面的数据产生错误,在此进行一下整理,方便大家以后正确的判断空值。以下带来示例给大家进行讲解。建表create table test (colA varchar(10) not null,colB varchar(10) null);向test表中插入数据插入colA为null的数据insert into test values (null,1);此时会报错,因为colA列不能为null。插入colB为n原创 2021-01-14 22:46:36 · 1049 阅读 · 2 评论 -
Mysql中的utf-8竟然是假的!
最近遇到一个神奇的问题,在往数据库中插入聊天表情的时候,离奇的报错,我的客户端、服务器、数据库都是UTF-8 编码的,所以应该不会出现问题。最终发现根本的原因在于MySQL 的“utf8”实际上不是真正的 UTF-8。Mysql的utf-8的问题MySQL 的“utf8”实际上不是真正的 UTF-8。“utf8”只支持每个字符最多三个字节,而真正的 UTF-8 是每个字符最多四个字节。MySQL 一直没有修复这个 bug,他们在 2010 年发布了一个叫作“utf8mb4”的字符集,绕过了这个问题。原创 2021-01-09 23:14:20 · 414 阅读 · 0 评论 -
Mysql中varchar类型的猫腻!
varchar的存储规则4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节)。5.0版本以上,varchar(20),指的是20字符,无论存放的是数字、字母还是UTF8汉字(每个汉字3字节),都可以存放20个,最大大小是65532字节。varchar 字段是将实际内容单独存储在聚簇索引之外,内容开头用1到2个字节表示实际长度。官方是这么说的:Values in VARCHAR columns are variable-length stri原创 2021-01-08 22:14:14 · 789 阅读 · 0 评论 -
mysql数据库限制多次登录失败,限定用户重试时间
前言最近的项目开始进行安全测试,其中有一个安全问题是这样的。应该增加用户登录失败处理功能,限制非法登录次数。建议是增加mysql数据库的登陆失败的锁定功能。相信大家也都会遇到这样的问题,在这里写一下,方便大家直接使用。设置方法登录mysql数据库mysql -u root -p输入如下命令,安装插件install plugin CONNECTION_CONTROL soname 'connection_control.so';install plugin CONNECT原创 2021-01-06 21:09:52 · 2415 阅读 · 0 评论