You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
How to set not default collation for connection?
I`m using utf8mb4 charset and utf8mb4_unicode_ci,
but i cant set collation. Default collation is utf8mb4_general_ci
I cant disable builtin "SET NAMES utf8mb4" and cant override in $dumpSettings['init_commands'], because the builtin commands come after the user commands.
If i add "SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci" to 'init_commands' i get it:
$dumpSettings['init_commands'] dump
array (3) [
0 => string (44) "SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci"
1 => string (17) "SET NAMES utf8mb4"
2 => string (22) "SET TIME_ZONE='+00:00'"
]
The text was updated successfully, but these errors were encountered:
As far as I can see, default-character-set is the dump setting you need and it's just a string variable passed directly into SET NAMES query. So you can specify there not only charset but the collation too. Could you try this approach?
The first thing I tried to do was to do exactly that, but quickly realized that it was not possible because this array value ('default-character-set') is used elsewhere in the class and the "COLLATE" clause is invalid there.
For example this class code generates a commented Mysql command: "/*!40101 SET character_set_client = " . $this->dumpSettings['default-character-set'] . " */;"
Maybe we could create an additional option "default-character-collation" that can be sent to the connection string, appending it to SET NAMES. What do you think?
How to set not default collation for connection?
I`m using utf8mb4 charset and utf8mb4_unicode_ci,
but i cant set collation. Default collation is utf8mb4_general_ci
I cant disable builtin "SET NAMES utf8mb4" and cant override in $dumpSettings['init_commands'], because the builtin commands come after the user commands.
If i add "SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci" to 'init_commands' i get it:
$dumpSettings['init_commands'] dump
array (3) [
0 => string (44) "SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci"
1 => string (17) "SET NAMES utf8mb4"
2 => string (22) "SET TIME_ZONE='+00:00'"
]
The text was updated successfully, but these errors were encountered: