我有一个 Golang 程序,它可以连接到具有不同字符集或排序规则的数据库。
例如,在编写 Golang MYSQL 驱动程序时默认为 utf8mb4_general_ci https://github.com/go-sql-driver/mysql#collation
但是,如果我连接到这样配置的数据库:
CREATE DATABASE example character set utf8mb4 collate utf8mb4_unicode_ci;
我可以预料“坏事会发生”吗?索引不起作用?
最佳答案
在大多数情况下,没有问题。例如,当使用 WHERE column=?
时,无论连接排序规则如何,都会使用列排序规则。
另请参阅:https://dev.mysql.com/doc/refman/5.6/en/charset-collation-coercibility.html
但我不能说它是 100% 安全的。在所有地方使用一种归类是安全的。
关于mysql - 使用错误的排序规则连接到 mysql 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55998671/