
mysql
-00
这个作者很懒,什么都没留下…
展开
-
Specified key was too long; max key length is 767 bytes
最近在开发中遇到了如上问题,问题显示索引超出了767长度限制,出现这个原因是因为数据库中innodb_large_prefix变量被关闭了,打开情况下索引键前缀限制为3072字节。 解决办法: 本着不修改数据库配置得原则:我们可以添加索引前缀来解决这个问题,不必把整个字段都当成索引。 索引前缀的长度选择: select count(distinct left(字段名,num))/count(*) from 表名; 这里num是指截取的长度,这个结果比例越大越好。 1;首先删除原先的索引,因为索引长度不一样系原创 2021-09-06 16:14:55 · 248 阅读 · 0 评论 -
mysql中concat和concat_ws的区别
concat和concat_ws都是对字符串进行连接区别在于: 1:concat(str1,str2)所连接的字符串中如果有一个为空则结果返回为空 2:concat_ws(separator,str1,str2)是以指定分隔符来进行连接的,如果不指定分隔符结果也是空 3:cancat_ws(separator,str1,str2)不会跳过空字符串。但是,它会跳过separator参数后的任何NULL值 例子: ...原创 2021-08-04 12:01:19 · 539 阅读 · 0 评论