【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
TiDB6.5 设置排序规则为utf8mb4_general_ci之后,如果create table语句中指定了default charset=utf8 但是没有指定排序规则 那么该表的排序规则是啥,是utf8_bin还是utf8mb4_general_ci
我不是问的优先级顺序
所以我改了哈哈哈,一开始看岔了
没有指定排序规则,但是指定了字符集。则默认的排序规则会使用指定字符集的默认排序规则
前边说的对,建议在创库时指定字符集和排序规则,建表时不指定这俩子句
我觉得是utf8_bin,但我懒得验证
1 个赞
utf8_bin
测试一下:)
排序规则为utf8mb4_general_ci
utf8_bin
utf8_bin
有默认的字符集对应默认的排序,看看文档
眼见为实。你可以做个实验,create table之后用show create table 语句看看建表语句是怎么样的。我猜utf8mb4_general_ci可能性比较大。
一猜就错了。 。utf8编码默认用utf8_bin排序。如果没有指定,默认就这个。
会用字符集相匹配的
默认字符集为 utf8_bin
你说的对。我审题错了。我以为default_charset是utf8bm4。
utf8_bin
utf8_bin,与字符集相匹配