MariaDB:带有 [.character.] 的正则表达式不再工作(不支持 POSIX 整理元素)



我有一个让我发疯的错误。当我从官方MySQL页面获取以下MySQL REGEX示例时,我收到一个错误。使用的 SQL 语句:

SELECT '~' REGEXP '[[.tilde.]]';

我收到的错误消息:

#1139 - Got error 'POSIX collating elements are not supported at offset 1' from regexp

示例来源(向下滚动到 [.characters.](:https://dev.mysql.com/doc/refman/5.7/en/regexp.html#operator_regexp

通过上面的答案,我得出了类似错误的答案...... "POSIX 命名类仅在类中受支持" 将我的DjangoDB从Postgresql更改为Mysql/MariaDB,并且由于我的Django应用程序中的特殊搜索模式而出现错误:

search_pattern = r'(-|[:space:]|/|[(]|[)])*%s' return Q(telefon__iregex=search) | Q(mobil__iregex=search)

我把它换成了...

search_pattern = r'(-| |/|[(]|[)])*%s' return Q(telefon__iregex=search) | Q(mobil__iregex=search)

修复了它。因此,MariaDB 似乎真的不喜欢 [] 表达式...... 感谢您的提示!

最新更新