Commit eedbffec2e7 for php.net

commit eedbffec2e7039c65d2567f8df3b1205bb6a5034
Author: Kamil Tekiela <tekiela246@gmail.com>
Date:   Sat Mar 7 22:09:02 2026 +0000

    Empty some values of mysqli_get_charset() (#21361)

    * Stop reporting unhelpful values in mysqli_get_charset

    * Remove element "comment" as it has been undocumented

diff --git a/UPGRADING b/UPGRADING
index 454a7b900f3..732d6f1d485 100644
--- a/UPGRADING
+++ b/UPGRADING
@@ -101,6 +101,12 @@ PHP 8.6 UPGRADE NOTES
 5. Changed Functions
 ========================================

+- mysqli:
+  . The return structure of mysqli_get_charset() no longer contains
+    the undocumented "comment" element. The value of "charsetnr" is
+    now set to a constant 0 as this number was an implementation detail
+    that should not have been exposed to the public.
+
 - OpenSSL:
   . Output of openssl_x509_parse() contains criticalExtensions listing all
     critical certificate extensions.
diff --git a/ext/mysqli/mysqli_nonapi.c b/ext/mysqli/mysqli_nonapi.c
index 50c9b36e4ce..2e51dca3100 100644
--- a/ext/mysqli/mysqli_nonapi.c
+++ b/ext/mysqli/mysqli_nonapi.c
@@ -965,8 +965,8 @@ PHP_FUNCTION(mysqli_get_charset)
 {
 	MY_MYSQL				*mysql;
 	zval					*mysql_link;
-	const char 				*name = NULL, *collation = NULL, *dir = NULL, *comment = NULL;
-	uint32_t				minlength, maxlength, number, state;
+	const char 				*name = NULL, *collation = NULL;
+	uint32_t				minlength, maxlength;
 	const MYSQLND_CHARSET	*cs;

 	if (zend_parse_method_parameters(ZEND_NUM_ARGS(), getThis(), "O", &mysql_link, mysqli_link_class_entry) == FAILURE) {
@@ -984,19 +984,15 @@ PHP_FUNCTION(mysqli_get_charset)
 	collation = cs->collation;
 	minlength = cs->char_minlen;
 	maxlength = cs->char_maxlen;
-	number = cs->nr;
-	comment = cs->comment;
-	state = 1;	/* all charsets are compiled in */
 	object_init(return_value);

 	add_property_string(return_value, "charset", (name) ? (char *)name : "");
 	add_property_string(return_value, "collation",(collation) ? (char *)collation : "");
-	add_property_string(return_value, "dir", (dir) ? (char *)dir : "");
+	add_property_string(return_value, "dir", ""); /* Kept for backward compatibility */
 	add_property_long(return_value, "min_length", minlength);
 	add_property_long(return_value, "max_length", maxlength);
-	add_property_long(return_value, "number", number);
-	add_property_long(return_value, "state", state);
-	add_property_string(return_value, "comment", (comment) ? (char *)comment : "");
+	add_property_long(return_value, "number", 0); /* Kept for backward compatibility */
+	add_property_long(return_value, "state", 1); /* Kept for backward compatibility */
 }
 /* }}} */

diff --git a/ext/mysqli/tests/mysqli_fetch_field.phpt b/ext/mysqli/tests/mysqli_fetch_field.phpt
index dacbd534966..e65de2308ab 100644
--- a/ext/mysqli/tests/mysqli_fetch_field.phpt
+++ b/ext/mysqli/tests/mysqli_fetch_field.phpt
@@ -30,10 +30,6 @@
     /* label column, result set charset */
     $tmp = mysqli_fetch_field($res);
     var_dump($tmp);
-    if ($tmp->charsetnr != $charsetInfo->number) {
-        printf("[004] Expecting charset %s/%d got %d\n",
-            $charsetInfo->charset, $charsetInfo->number, $tmp->charsetnr);
-    }
     if ($tmp->db != $db) {
         printf("011] Expecting database '%s' got '%s'\n",
             $db, $tmp->db);
diff --git a/ext/mysqli/tests/mysqli_fetch_field_oo.phpt b/ext/mysqli/tests/mysqli_fetch_field_oo.phpt
index 1fa84f36fae..0f2a6c55841 100644
--- a/ext/mysqli/tests/mysqli_fetch_field_oo.phpt
+++ b/ext/mysqli/tests/mysqli_fetch_field_oo.phpt
@@ -27,10 +27,6 @@

     $tmp = $res->fetch_field();
     var_dump($tmp);
-    if ($tmp->charsetnr != $charsetInfo->number) {
-        printf("[005] Expecting charset %s/%d got %d\n",
-            $charsetInfo->charset, $charsetInfo->number, $tmp->charsetnr);
-    }
     if ($tmp->db != $db) {
         printf("[007] Expecting database '%s' got '%s'\n",
           $db, $tmp->db);
diff --git a/ext/mysqli/tests/mysqli_fetch_fields.phpt b/ext/mysqli/tests/mysqli_fetch_fields.phpt
index 78df2ef7575..2257c4d9d06 100644
--- a/ext/mysqli/tests/mysqli_fetch_fields.phpt
+++ b/ext/mysqli/tests/mysqli_fetch_fields.phpt
@@ -26,16 +26,6 @@
     $fields = mysqli_fetch_fields($res);
     foreach ($fields as $k => $field) {
         var_dump($field);
-        switch ($k) {
-            case 1:
-                /* label column, result set charset */
-                if ($field->charsetnr != $charsetInfo->number) {
-                    printf("[004] Expecting charset %s/%d got %d\n",
-                        $charsetInfo->charset,
-                        $charsetInfo->number, $field->charsetnr);
-                }
-                break;
-        }
     }

     mysqli_free_result($res);
diff --git a/ext/mysqli/tests/mysqli_field_seek.phpt b/ext/mysqli/tests/mysqli_field_seek.phpt
index 1308db7d4f8..af52bf6c97f 100644
--- a/ext/mysqli/tests/mysqli_field_seek.phpt
+++ b/ext/mysqli/tests/mysqli_field_seek.phpt
@@ -80,10 +80,6 @@ function mysqli_field_seek_flags($flags) {
     $field = mysqli_fetch_field($res);
     var_dump($field);
     /* label column, result set charset */
-    if ($field->charsetnr != $charsetInfo->number) {
-        printf("[004] Expecting charset %s/%d got %d\n",
-            $charsetInfo->charset, $charsetInfo->number, $field->charsetnr);
-    }
     if ($field->length != $charsetInfo->max_length) {
         printf("[005] Expecting length %d got %d\n",
             $charsetInfo->max_length, $field->max_length);
diff --git a/ext/mysqli/tests/mysqli_get_charset.phpt b/ext/mysqli/tests/mysqli_get_charset.phpt
index 14f655f8b0b..2752084372a 100644
--- a/ext/mysqli/tests/mysqli_get_charset.phpt
+++ b/ext/mysqli/tests/mysqli_get_charset.phpt
@@ -15,6 +15,12 @@
         exit(1);
     }

+    // On some servers the default collation is not what we expect,
+    // so we need to set it explicitly to make sure that the test is deterministic.
+    mysqli_set_charset($link, 'utf8mb4');
+    if (!$res = mysqli_query($link, "SET NAMES utf8mb4 COLLATE 'utf8mb4_general_ci'"))
+        printf("[011] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+
     if (!$res = mysqli_query($link, 'SELECT @@character_set_connection AS charset, @@collation_connection AS collation'))
         printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
     $tmp = mysqli_fetch_assoc($res);
@@ -27,13 +33,6 @@
     if (!mysqli_fetch_assoc($res))
         printf("[010] Cannot fetch Maxlen and/or Comment, test will fail: $sql\n");

-    if (!$res = mysqli_query($link, sprintf("SHOW COLLATION LIKE '%s'", $collation_connection)))
-        printf("[011] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
-    $tmp = mysqli_fetch_assoc($res);
-    mysqli_free_result($res);
-    if (!($id = $tmp['Id']))
-        printf("[012] Cannot fetch Id/Number, test will fail\n");
-
     if (!$res = mysqli_query($link, sprintf("SHOW VARIABLES LIKE 'character_sets_dir'")))
         printf("[013] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
     $tmp = mysqli_fetch_assoc($res);
@@ -66,8 +65,8 @@

     if (!isset($charset->number) ||
         !is_int($charset->number) ||
-        ($charset->number !== (int)$id))
-        printf("[021] Expecting int/%d, got %s/%s\n", $id, gettype($charset->number), $charset->number);
+        ($charset->number !== 0))
+        printf("[021] Expecting int/%d, got %s/%s\n", 0, gettype($charset->number), $charset->number);

     if (!isset($charset->state) ||
         !is_int($charset->state))
diff --git a/ext/mysqli/tests/mysqli_stmt_get_result_metadata_fetch_field.phpt b/ext/mysqli/tests/mysqli_stmt_get_result_metadata_fetch_field.phpt
index dcc72108c7e..600c8ae4799 100644
--- a/ext/mysqli/tests/mysqli_stmt_get_result_metadata_fetch_field.phpt
+++ b/ext/mysqli/tests/mysqli_stmt_get_result_metadata_fetch_field.phpt
@@ -42,11 +42,6 @@
             Label column, result set charset.
             All of the following columns are "too hot" - too server dependent
             */
-            if ($field->charsetnr != $charsetInfo->number) {
-                printf("[004] Expecting charset %s/%d got %d\n",
-                    $charsetInfo->charset,
-                    $charsetInfo->number, $field->charsetnr);
-            }
             if ($field->length != $charsetInfo->max_length) {
                 printf("[005] Expecting length %d got %d\n",
                     $charsetInfo->max_length, $field->max_length);
diff --git a/ext/mysqlnd/mysqlnd_charset.c b/ext/mysqlnd/mysqlnd_charset.c
index 3503e79357a..a767bab392e 100644
--- a/ext/mysqlnd/mysqlnd_charset.c
+++ b/ext/mysqlnd/mysqlnd_charset.c
@@ -575,257 +575,257 @@ static unsigned int mysqlnd_mbvalid_dispatch(enum mysqlnd_encoding_valid encodin
 /* {{{ mysqlnd_charsets */
 const MYSQLND_CHARSET mysqlnd_charsets[] =
 {
-	{   1, "big5","big5_chinese_ci", 1, 2, "", mysqlnd_mbcharlen_big5_id, check_mb_big5_id, LOWEST_MB_BIG5},
-	{   3, "dec8", "dec8_swedish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{   4, "cp850", "cp850_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{   6, "hp8", "hp8_english_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{   7, "koi8r", "koi8r_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{   8, "latin1", "latin1_swedish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{   5, "latin1", "latin1_german1_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100}, /* should be after 0x8 because swedish_ci is the default collation */
-	{   9, "latin2", "latin2_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{   2, "latin2", "latin2_czech_cs", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100}, /* should be after 0x9 because general_ci is the default collation */
-	{  10, "swe7", "swe7_swedish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  11, "ascii", "ascii_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  12, "ujis", "ujis_japanese_ci", 1, 3, "", mysqlnd_mbcharlen_ujis_id, check_mb_ujis_id, LOWEST_MB_UJIS},
-	{  13, "sjis", "sjis_japanese_ci", 1, 2, "", mysqlnd_mbcharlen_sjis_id, check_mb_sjis_id, LOWEST_MB_SJIS},
-	{  16, "hebrew", "hebrew_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  17, "filename", "filename", 1, 5, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  18, "tis620", "tis620_thai_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  19, "euckr", "euckr_korean_ci", 1, 2, "", mysqlnd_mbcharlen_euckr_id, check_mb_euckr_id, LOWEST_MB_EUCKR},
-	{  21, "latin2", "latin2_hungarian_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  27, "latin2", "latin2_croatian_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  22, "koi8u", "koi8u_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  24, "gb2312", "gb2312_chinese_ci", 1, 2, "", mysqlnd_mbcharlen_gb2312_id, check_mb_gb2312_id, LOWEST_MB_GB2312},
-	{  25, "greek", "greek_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  26, "cp1250", "cp1250_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  28, "gbk", "gbk_chinese_ci", 1, 2, "", mysqlnd_mbcharlen_gbk_id, check_mb_gbk_id, LOWEST_MB_GBK},
-	{  30, "latin5", "latin5_turkish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  31, "latin1", "latin1_german2_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  15, "latin1", "latin1_danish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  32, "armscii8", "armscii8_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  33, UTF8_MB3, UTF8_MB3"_general_ci", 1, 3, "UTF-8 Unicode", mysqlnd_mbcharlen_utf8mb3_id,  check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{  35, "ucs2", "ucs2_general_ci", 2, 2, "UCS-2 Unicode", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{  36, "cp866", "cp866_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  37, "keybcs2", "keybcs2_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  38, "macce", "macce_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  39, "macroman", "macroman_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  40, "cp852", "cp852_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  41, "latin7", "latin7_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  20, "latin7", "latin7_estonian_cs", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  57, "cp1256", "cp1256_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  59, "cp1257", "cp1257_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  63, "binary", "binary", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  97, "eucjpms", "eucjpms_japanese_ci", 1, 3, "", mysqlnd_mbcharlen_eucjpms_id, check_mb_eucjpms_id, LOWEST_MB_EUCJPMS},
-	{  29, "cp1257", "cp1257_lithuanian_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  31, "latin1", "latin1_german2_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  34, "cp1250", "cp1250_czech_cs", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  42, "latin7", "latin7_general_cs", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  43, "macce", "macce_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  44, "cp1250", "cp1250_croatian_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  45, UTF8_MB4, UTF8_MB4"_general_ci", 1, 4, "UTF-8 Unicode", mysqlnd_mbcharlen_utf8_id,  check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{  46, UTF8_MB4, UTF8_MB4"_bin", 1, 4, "UTF-8 Unicode", mysqlnd_mbcharlen_utf8_id,  check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{  47, "latin1", "latin1_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  48, "latin1", "latin1_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  49, "latin1", "latin1_general_cs", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  51, "cp1251", "cp1251_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  14, "cp1251", "cp1251_bulgarian_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  23, "cp1251", "cp1251_ukrainian_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  50, "cp1251", "cp1251_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  52, "cp1251", "cp1251_general_cs", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  53, "macroman", "macroman_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  54, "utf16", "utf16_general_ci", 2, 4, "UTF-16 Unicode", mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
-	{  55, "utf16", "utf16_bin", 2, 4, "UTF-16 Unicode", mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
-	{  56, "utf16le", "utf16le_general_ci", 2, 4, "UTF-16LE Unicode", mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
-	{  58, "cp1257", "cp1257_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-/*55*/{  60, "utf32", "utf32_general_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*55*/{  61, "utf32", "utf32_bin", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-	{  62, "utf16le", "utf16le_bin", 2, 4, "UTF-16LE Unicode", mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
-	{  64, "armscii8", "armscii8_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  65, "ascii", "ascii_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  66, "cp1250", "cp1250_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  67, "cp1256", "cp1256_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  68, "cp866", "cp866_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  69, "dec8", "dec8_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  70, "greek", "greek_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  71, "hebrew", "hebrew_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  72, "hp8", "hp8_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  73, "keybcs2", "keybcs2_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  74, "koi8r", "koi8r_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  75, "koi8u", "koi8u_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  77, "latin2", "latin2_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  78, "latin5", "latin5_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  79, "latin7", "latin7_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  80, "cp850", "cp850_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  81, "cp852", "cp852_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  82, "swe7", "swe7_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  83, UTF8_MB3, UTF8_MB3"_bin", 1, 3, "UTF-8 Unicode", mysqlnd_mbcharlen_utf8mb3_id,  check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{  84, "big5", "big5_bin", 1, 2, "", mysqlnd_mbcharlen_big5_id, check_mb_big5_id, LOWEST_MB_BIG5},
-	{  85, "euckr", "euckr_bin", 1, 2, "", mysqlnd_mbcharlen_euckr_id, check_mb_euckr_id, LOWEST_MB_EUCKR},
-	{  86, "gb2312", "gb2312_bin", 1, 2, "", mysqlnd_mbcharlen_gb2312_id, check_mb_gb2312_id, LOWEST_MB_GB2312},
-	{  87, "gbk", "gbk_bin", 1, 2, "", mysqlnd_mbcharlen_gbk_id, check_mb_gbk_id, LOWEST_MB_GBK},
-	{  88, "sjis", "sjis_bin", 1, 2, "", mysqlnd_mbcharlen_sjis_id, check_mb_sjis_id, LOWEST_MB_SJIS},
-	{  89, "tis620", "tis620_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  90, "ucs2", "ucs2_bin", 2, 2, "UCS-2 Unicode", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{  91, "ujis", "ujis_bin", 1, 3, "", mysqlnd_mbcharlen_ujis_id, check_mb_ujis_id, LOWEST_MB_UJIS},
-	{  92, "geostd8", "geostd8_general_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  93, "geostd8", "geostd8_bin", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  94, "latin1", "latin1_spanish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{  95, "cp932", "cp932_japanese_ci", 1, 2, "", mysqlnd_mbcharlen_cp932_id, check_mb_cp932_id, LOWEST_MB_CP932},
-	{  96, "cp932", "cp932_bin", 1, 2, "", mysqlnd_mbcharlen_cp932_id, check_mb_cp932_id, LOWEST_MB_CP932},
-	{  97, "eucjpms", "eucjpms_japanese_ci", 1, 3, "", mysqlnd_mbcharlen_eucjpms_id, check_mb_eucjpms_id, LOWEST_MB_EUCJPMS},
-	{  98, "eucjpms", "eucjpms_bin", 1, 3, "", mysqlnd_mbcharlen_eucjpms_id, check_mb_eucjpms_id, LOWEST_MB_EUCJPMS},
-	{  99, "cp1250", "cp1250_polish_ci", 1, 1, "", mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
-	{ 128, "ucs2", "ucs2_unicode_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 129, "ucs2", "ucs2_icelandic_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 130, "ucs2", "ucs2_latvian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 131, "ucs2", "ucs2_romanian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 132, "ucs2", "ucs2_slovenian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 133, "ucs2", "ucs2_polish_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 134, "ucs2", "ucs2_estonian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 135, "ucs2", "ucs2_spanish_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 136, "ucs2", "ucs2_swedish_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 137, "ucs2", "ucs2_turkish_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 138, "ucs2", "ucs2_czech_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 139, "ucs2", "ucs2_danish_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 140, "ucs2", "ucs2_lithuanian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 141, "ucs2", "ucs2_slovak_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 142, "ucs2", "ucs2_spanish2_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 143, "ucs2", "ucs2_roman_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 144, "ucs2", "ucs2_persian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 145, "ucs2", "ucs2_esperanto_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 146, "ucs2", "ucs2_hungarian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 147, "ucs2", "ucs2_sinhala_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 148, "ucs2", "ucs2_german2_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 149, "ucs2", "ucs2_croatian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 150, "ucs2", "ucs2_unicode_520_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-	{ 151, "ucs2", "ucs2_vietnamese_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
-
-/*56*/{160, "utf32", "utf32_unicode_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{161, "utf32", "utf32_icelandic_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{162, "utf32", "utf32_latvian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{163, "utf32", "utf32_romanian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{164, "utf32", "utf32_slovenian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{165, "utf32", "utf32_polish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{166, "utf32", "utf32_estonian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{167, "utf32", "utf32_spanish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{168, "utf32", "utf32_swedish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{169, "utf32", "utf32_turkish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{170, "utf32", "utf32_czech_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{171, "utf32", "utf32_danish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{172, "utf32", "utf32_lithuanian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{173, "utf32", "utf32_slovak_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{174, "utf32", "utf32_spanish2_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{175, "utf32", "utf32_roman_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{176, "utf32", "utf32_persian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{177, "utf32", "utf32_esperanto_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{178, "utf32", "utf32_hungarian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{179, "utf32", "utf32_sinhala_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{180, "utf32", "utf32_german2_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{181, "utf32", "utf32_croatian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{182, "utf32", "utf32_unicode_520_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-/*56*/{183, "utf32", "utf32_vietnamese_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
-
-	{ 192, UTF8_MB3, UTF8_MB3"_unicode_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 193, UTF8_MB3, UTF8_MB3"_icelandic_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 194, UTF8_MB3, UTF8_MB3"_latvian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id,  check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 195, UTF8_MB3, UTF8_MB3"_romanian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 196, UTF8_MB3, UTF8_MB3"_slovenian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 197, UTF8_MB3, UTF8_MB3"_polish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 198, UTF8_MB3, UTF8_MB3"_estonian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 199, UTF8_MB3, UTF8_MB3"_spanish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 200, UTF8_MB3, UTF8_MB3"_swedish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 201, UTF8_MB3, UTF8_MB3"_turkish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 202, UTF8_MB3, UTF8_MB3"_czech_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 203, UTF8_MB3, UTF8_MB3"_danish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 204, UTF8_MB3, UTF8_MB3"_lithuanian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 205, UTF8_MB3, UTF8_MB3"_slovak_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 206, UTF8_MB3, UTF8_MB3"_spanish2_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 207, UTF8_MB3, UTF8_MB3"_roman_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 208, UTF8_MB3, UTF8_MB3"_persian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 209, UTF8_MB3, UTF8_MB3"_esperanto_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 210, UTF8_MB3, UTF8_MB3"_hungarian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 211, UTF8_MB3, UTF8_MB3"_sinhala_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 212, UTF8_MB3, UTF8_MB3"_german2_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 213, UTF8_MB3, UTF8_MB3"_croatian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 214, UTF8_MB3, UTF8_MB3"_unicode_520_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-	{ 215, UTF8_MB3, UTF8_MB3"_vietnamese_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
-
-	{ 224, UTF8_MB4, UTF8_MB4"_unicode_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 225, UTF8_MB4, UTF8_MB4"_icelandic_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 226, UTF8_MB4, UTF8_MB4"_latvian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 227, UTF8_MB4, UTF8_MB4"_romanian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 228, UTF8_MB4, UTF8_MB4"_slovenian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 229, UTF8_MB4, UTF8_MB4"_polish_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 230, UTF8_MB4, UTF8_MB4"_estonian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 231, UTF8_MB4, UTF8_MB4"_spanish_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 232, UTF8_MB4, UTF8_MB4"_swedish_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 233, UTF8_MB4, UTF8_MB4"_turkish_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 234, UTF8_MB4, UTF8_MB4"_czech_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 235, UTF8_MB4, UTF8_MB4"_danish_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 236, UTF8_MB4, UTF8_MB4"_lithuanian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 237, UTF8_MB4, UTF8_MB4"_slovak_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 238, UTF8_MB4, UTF8_MB4"_spanish2_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 239, UTF8_MB4, UTF8_MB4"_roman_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 240, UTF8_MB4, UTF8_MB4"_persian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 241, UTF8_MB4, UTF8_MB4"_esperanto_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 242, UTF8_MB4, UTF8_MB4"_hungarian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 243, UTF8_MB4, UTF8_MB4"_sinhala_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 244, UTF8_MB4, UTF8_MB4"_german2_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 245, UTF8_MB4, UTF8_MB4"_croatian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 246, UTF8_MB4, UTF8_MB4"_unicode_520_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 247, UTF8_MB4, UTF8_MB4"_vietnamese_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 248, "gb18030", "gb18030_chinese_ci", 1, 4, "", mysqlnd_mbcharlen_gb18030_id, my_ismbchar_gb18030_id, LOWEST_MB_GB18030},
-	{ 249, "gb18030", "gb18030_bin", 1, 4, "", mysqlnd_mbcharlen_gb18030_id, my_ismbchar_gb18030_id, LOWEST_MB_GB18030},
-
-	{ 254, UTF8_MB3, UTF8_MB3"_general_cs", 1, 3, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 255, UTF8_MB4, UTF8_MB4"_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 256, UTF8_MB4, UTF8_MB4"_de_pb_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 257, UTF8_MB4, UTF8_MB4"_is_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 258, UTF8_MB4, UTF8_MB4"_lv_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 259, UTF8_MB4, UTF8_MB4"_ro_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 260, UTF8_MB4, UTF8_MB4"_sl_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 261, UTF8_MB4, UTF8_MB4"_pl_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 262, UTF8_MB4, UTF8_MB4"_et_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 263, UTF8_MB4, UTF8_MB4"_es_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 264, UTF8_MB4, UTF8_MB4"_sv_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 265, UTF8_MB4, UTF8_MB4"_tr_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 266, UTF8_MB4, UTF8_MB4"_cs_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 267, UTF8_MB4, UTF8_MB4"_da_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 268, UTF8_MB4, UTF8_MB4"_lt_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 269, UTF8_MB4, UTF8_MB4"_sk_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 270, UTF8_MB4, UTF8_MB4"_es_trad_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 271, UTF8_MB4, UTF8_MB4"_la_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 272, UTF8_MB4, UTF8_MB4"_fa_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 273, UTF8_MB4, UTF8_MB4"_eo_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 274, UTF8_MB4, UTF8_MB4"_hu_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 275, UTF8_MB4, UTF8_MB4"_hr_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 276, UTF8_MB4, UTF8_MB4"_si_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 277, UTF8_MB4, UTF8_MB4"_vi_0900_ai_ci", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 278, UTF8_MB4, UTF8_MB4"_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 279, UTF8_MB4, UTF8_MB4"_de_pb_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 280, UTF8_MB4, UTF8_MB4"_is_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 281, UTF8_MB4, UTF8_MB4"_lv_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 282, UTF8_MB4, UTF8_MB4"_ro_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 283, UTF8_MB4, UTF8_MB4"_sl_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 284, UTF8_MB4, UTF8_MB4"_pl_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 285, UTF8_MB4, UTF8_MB4"_et_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 286, UTF8_MB4, UTF8_MB4"_es_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 287, UTF8_MB4, UTF8_MB4"_sv_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 288, UTF8_MB4, UTF8_MB4"_tr_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 289, UTF8_MB4, UTF8_MB4"_cs_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 290, UTF8_MB4, UTF8_MB4"_da_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 291, UTF8_MB4, UTF8_MB4"_lt_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 292, UTF8_MB4, UTF8_MB4"_sk_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 293, UTF8_MB4, UTF8_MB4"_es_trad_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 294, UTF8_MB4, UTF8_MB4"_la_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 295, UTF8_MB4, UTF8_MB4"_fa_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 296, UTF8_MB4, UTF8_MB4"_eo_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 297, UTF8_MB4, UTF8_MB4"_hu_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 298, UTF8_MB4, UTF8_MB4"_hr_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 299, UTF8_MB4, UTF8_MB4"_si_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 300, UTF8_MB4, UTF8_MB4"_vi_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{ 303, UTF8_MB4, UTF8_MB4"_ja_0900_as_cs", 1, 4, "", mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
-	{   0, NULL, NULL, 0, 0, NULL, mysqlnd_mbcharlen_null_id, check_null_id, 0x100}
+	{   1, "big5","big5_chinese_ci", 1, 2, mysqlnd_mbcharlen_big5_id, check_mb_big5_id, LOWEST_MB_BIG5},
+	{   3, "dec8", "dec8_swedish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{   4, "cp850", "cp850_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{   6, "hp8", "hp8_english_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{   7, "koi8r", "koi8r_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{   8, "latin1", "latin1_swedish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{   5, "latin1", "latin1_german1_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100}, /* should be after 0x8 because swedish_ci is the default collation */
+	{   9, "latin2", "latin2_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{   2, "latin2", "latin2_czech_cs", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100}, /* should be after 0x9 because general_ci is the default collation */
+	{  10, "swe7", "swe7_swedish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  11, "ascii", "ascii_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  12, "ujis", "ujis_japanese_ci", 1, 3, mysqlnd_mbcharlen_ujis_id, check_mb_ujis_id, LOWEST_MB_UJIS},
+	{  13, "sjis", "sjis_japanese_ci", 1, 2, mysqlnd_mbcharlen_sjis_id, check_mb_sjis_id, LOWEST_MB_SJIS},
+	{  16, "hebrew", "hebrew_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  17, "filename", "filename", 1, 5, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  18, "tis620", "tis620_thai_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  19, "euckr", "euckr_korean_ci", 1, 2, mysqlnd_mbcharlen_euckr_id, check_mb_euckr_id, LOWEST_MB_EUCKR},
+	{  21, "latin2", "latin2_hungarian_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  27, "latin2", "latin2_croatian_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  22, "koi8u", "koi8u_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  24, "gb2312", "gb2312_chinese_ci", 1, 2, mysqlnd_mbcharlen_gb2312_id, check_mb_gb2312_id, LOWEST_MB_GB2312},
+	{  25, "greek", "greek_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  26, "cp1250", "cp1250_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  28, "gbk", "gbk_chinese_ci", 1, 2, mysqlnd_mbcharlen_gbk_id, check_mb_gbk_id, LOWEST_MB_GBK},
+	{  30, "latin5", "latin5_turkish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  31, "latin1", "latin1_german2_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  15, "latin1", "latin1_danish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  32, "armscii8", "armscii8_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  33, UTF8_MB3, UTF8_MB3"_general_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id,  check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{  35, "ucs2", "ucs2_general_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{  36, "cp866", "cp866_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  37, "keybcs2", "keybcs2_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  38, "macce", "macce_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  39, "macroman", "macroman_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  40, "cp852", "cp852_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  41, "latin7", "latin7_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  20, "latin7", "latin7_estonian_cs", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  57, "cp1256", "cp1256_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  59, "cp1257", "cp1257_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  63, "binary", "binary", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  97, "eucjpms", "eucjpms_japanese_ci", 1, 3, mysqlnd_mbcharlen_eucjpms_id, check_mb_eucjpms_id, LOWEST_MB_EUCJPMS},
+	{  29, "cp1257", "cp1257_lithuanian_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  31, "latin1", "latin1_german2_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  34, "cp1250", "cp1250_czech_cs", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  42, "latin7", "latin7_general_cs", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  43, "macce", "macce_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  44, "cp1250", "cp1250_croatian_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  45, UTF8_MB4, UTF8_MB4"_general_ci", 1, 4, mysqlnd_mbcharlen_utf8_id,  check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{  46, UTF8_MB4, UTF8_MB4"_bin", 1, 4, mysqlnd_mbcharlen_utf8_id,  check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{  47, "latin1", "latin1_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  48, "latin1", "latin1_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  49, "latin1", "latin1_general_cs", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  51, "cp1251", "cp1251_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  14, "cp1251", "cp1251_bulgarian_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  23, "cp1251", "cp1251_ukrainian_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  50, "cp1251", "cp1251_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  52, "cp1251", "cp1251_general_cs", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  53, "macroman", "macroman_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  54, "utf16", "utf16_general_ci", 2, 4, mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
+	{  55, "utf16", "utf16_bin", 2, 4, mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
+	{  56, "utf16le", "utf16le_general_ci", 2, 4, mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
+	{  58, "cp1257", "cp1257_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+/*55*/{  60, "utf32", "utf32_general_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*55*/{  61, "utf32", "utf32_bin", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+	{  62, "utf16le", "utf16le_bin", 2, 4, mysqlnd_mbcharlen_utf16_id, check_mb_utf16_id, LOWEST_MB_UTF16},
+	{  64, "armscii8", "armscii8_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  65, "ascii", "ascii_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  66, "cp1250", "cp1250_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  67, "cp1256", "cp1256_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  68, "cp866", "cp866_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  69, "dec8", "dec8_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  70, "greek", "greek_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  71, "hebrew", "hebrew_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  72, "hp8", "hp8_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  73, "keybcs2", "keybcs2_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  74, "koi8r", "koi8r_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  75, "koi8u", "koi8u_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  77, "latin2", "latin2_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  78, "latin5", "latin5_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  79, "latin7", "latin7_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  80, "cp850", "cp850_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  81, "cp852", "cp852_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  82, "swe7", "swe7_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  83, UTF8_MB3, UTF8_MB3"_bin", 1, 3, mysqlnd_mbcharlen_utf8mb3_id,  check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{  84, "big5", "big5_bin", 1, 2, mysqlnd_mbcharlen_big5_id, check_mb_big5_id, LOWEST_MB_BIG5},
+	{  85, "euckr", "euckr_bin", 1, 2, mysqlnd_mbcharlen_euckr_id, check_mb_euckr_id, LOWEST_MB_EUCKR},
+	{  86, "gb2312", "gb2312_bin", 1, 2, mysqlnd_mbcharlen_gb2312_id, check_mb_gb2312_id, LOWEST_MB_GB2312},
+	{  87, "gbk", "gbk_bin", 1, 2, mysqlnd_mbcharlen_gbk_id, check_mb_gbk_id, LOWEST_MB_GBK},
+	{  88, "sjis", "sjis_bin", 1, 2, mysqlnd_mbcharlen_sjis_id, check_mb_sjis_id, LOWEST_MB_SJIS},
+	{  89, "tis620", "tis620_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  90, "ucs2", "ucs2_bin", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{  91, "ujis", "ujis_bin", 1, 3, mysqlnd_mbcharlen_ujis_id, check_mb_ujis_id, LOWEST_MB_UJIS},
+	{  92, "geostd8", "geostd8_general_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  93, "geostd8", "geostd8_bin", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  94, "latin1", "latin1_spanish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{  95, "cp932", "cp932_japanese_ci", 1, 2, mysqlnd_mbcharlen_cp932_id, check_mb_cp932_id, LOWEST_MB_CP932},
+	{  96, "cp932", "cp932_bin", 1, 2, mysqlnd_mbcharlen_cp932_id, check_mb_cp932_id, LOWEST_MB_CP932},
+	{  97, "eucjpms", "eucjpms_japanese_ci", 1, 3, mysqlnd_mbcharlen_eucjpms_id, check_mb_eucjpms_id, LOWEST_MB_EUCJPMS},
+	{  98, "eucjpms", "eucjpms_bin", 1, 3, mysqlnd_mbcharlen_eucjpms_id, check_mb_eucjpms_id, LOWEST_MB_EUCJPMS},
+	{  99, "cp1250", "cp1250_polish_ci", 1, 1, mysqlnd_mbcharlen_null_id, check_null_id, 0x100},
+	{ 128, "ucs2", "ucs2_unicode_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 129, "ucs2", "ucs2_icelandic_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 130, "ucs2", "ucs2_latvian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 131, "ucs2", "ucs2_romanian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 132, "ucs2", "ucs2_slovenian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 133, "ucs2", "ucs2_polish_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 134, "ucs2", "ucs2_estonian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 135, "ucs2", "ucs2_spanish_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 136, "ucs2", "ucs2_swedish_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 137, "ucs2", "ucs2_turkish_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 138, "ucs2", "ucs2_czech_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 139, "ucs2", "ucs2_danish_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 140, "ucs2", "ucs2_lithuanian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 141, "ucs2", "ucs2_slovak_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 142, "ucs2", "ucs2_spanish2_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 143, "ucs2", "ucs2_roman_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 144, "ucs2", "ucs2_persian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 145, "ucs2", "ucs2_esperanto_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 146, "ucs2", "ucs2_hungarian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 147, "ucs2", "ucs2_sinhala_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 148, "ucs2", "ucs2_german2_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 149, "ucs2", "ucs2_croatian_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 150, "ucs2", "ucs2_unicode_520_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+	{ 151, "ucs2", "ucs2_vietnamese_ci", 2, 2, mysqlnd_mbcharlen_ucs2_id, check_mb_ucs2_id, LOWEST_MB_UCS2},
+
+/*56*/{160, "utf32", "utf32_unicode_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{161, "utf32", "utf32_icelandic_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{162, "utf32", "utf32_latvian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{163, "utf32", "utf32_romanian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{164, "utf32", "utf32_slovenian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{165, "utf32", "utf32_polish_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{166, "utf32", "utf32_estonian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{167, "utf32", "utf32_spanish_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{168, "utf32", "utf32_swedish_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{169, "utf32", "utf32_turkish_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{170, "utf32", "utf32_czech_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{171, "utf32", "utf32_danish_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{172, "utf32", "utf32_lithuanian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{173, "utf32", "utf32_slovak_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{174, "utf32", "utf32_spanish2_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{175, "utf32", "utf32_roman_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{176, "utf32", "utf32_persian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{177, "utf32", "utf32_esperanto_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{178, "utf32", "utf32_hungarian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{179, "utf32", "utf32_sinhala_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{180, "utf32", "utf32_german2_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{181, "utf32", "utf32_croatian_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{182, "utf32", "utf32_unicode_520_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+/*56*/{183, "utf32", "utf32_vietnamese_ci", 4, 4, mysqlnd_mbcharlen_utf32_id, check_mb_utf32_id, LOWEST_MB_UTF32},
+
+	{ 192, UTF8_MB3, UTF8_MB3"_unicode_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 193, UTF8_MB3, UTF8_MB3"_icelandic_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 194, UTF8_MB3, UTF8_MB3"_latvian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id,  check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 195, UTF8_MB3, UTF8_MB3"_romanian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 196, UTF8_MB3, UTF8_MB3"_slovenian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 197, UTF8_MB3, UTF8_MB3"_polish_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 198, UTF8_MB3, UTF8_MB3"_estonian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 199, UTF8_MB3, UTF8_MB3"_spanish_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 200, UTF8_MB3, UTF8_MB3"_swedish_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 201, UTF8_MB3, UTF8_MB3"_turkish_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 202, UTF8_MB3, UTF8_MB3"_czech_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 203, UTF8_MB3, UTF8_MB3"_danish_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 204, UTF8_MB3, UTF8_MB3"_lithuanian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 205, UTF8_MB3, UTF8_MB3"_slovak_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 206, UTF8_MB3, UTF8_MB3"_spanish2_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 207, UTF8_MB3, UTF8_MB3"_roman_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 208, UTF8_MB3, UTF8_MB3"_persian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 209, UTF8_MB3, UTF8_MB3"_esperanto_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 210, UTF8_MB3, UTF8_MB3"_hungarian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 211, UTF8_MB3, UTF8_MB3"_sinhala_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 212, UTF8_MB3, UTF8_MB3"_german2_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 213, UTF8_MB3, UTF8_MB3"_croatian_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 214, UTF8_MB3, UTF8_MB3"_unicode_520_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+	{ 215, UTF8_MB3, UTF8_MB3"_vietnamese_ci", 1, 3, mysqlnd_mbcharlen_utf8mb3_id, check_mb_utf8mb3_valid_id, LOWEST_MB_UTF8MB3},
+
+	{ 224, UTF8_MB4, UTF8_MB4"_unicode_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 225, UTF8_MB4, UTF8_MB4"_icelandic_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 226, UTF8_MB4, UTF8_MB4"_latvian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 227, UTF8_MB4, UTF8_MB4"_romanian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 228, UTF8_MB4, UTF8_MB4"_slovenian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 229, UTF8_MB4, UTF8_MB4"_polish_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 230, UTF8_MB4, UTF8_MB4"_estonian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 231, UTF8_MB4, UTF8_MB4"_spanish_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 232, UTF8_MB4, UTF8_MB4"_swedish_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 233, UTF8_MB4, UTF8_MB4"_turkish_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 234, UTF8_MB4, UTF8_MB4"_czech_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 235, UTF8_MB4, UTF8_MB4"_danish_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 236, UTF8_MB4, UTF8_MB4"_lithuanian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 237, UTF8_MB4, UTF8_MB4"_slovak_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 238, UTF8_MB4, UTF8_MB4"_spanish2_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 239, UTF8_MB4, UTF8_MB4"_roman_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 240, UTF8_MB4, UTF8_MB4"_persian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 241, UTF8_MB4, UTF8_MB4"_esperanto_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 242, UTF8_MB4, UTF8_MB4"_hungarian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 243, UTF8_MB4, UTF8_MB4"_sinhala_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 244, UTF8_MB4, UTF8_MB4"_german2_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 245, UTF8_MB4, UTF8_MB4"_croatian_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 246, UTF8_MB4, UTF8_MB4"_unicode_520_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 247, UTF8_MB4, UTF8_MB4"_vietnamese_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 248, "gb18030", "gb18030_chinese_ci", 1, 4, mysqlnd_mbcharlen_gb18030_id, my_ismbchar_gb18030_id, LOWEST_MB_GB18030},
+	{ 249, "gb18030", "gb18030_bin", 1, 4, mysqlnd_mbcharlen_gb18030_id, my_ismbchar_gb18030_id, LOWEST_MB_GB18030},
+
+	{ 254, UTF8_MB3, UTF8_MB3"_general_cs", 1, 3, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 255, UTF8_MB4, UTF8_MB4"_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 256, UTF8_MB4, UTF8_MB4"_de_pb_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 257, UTF8_MB4, UTF8_MB4"_is_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 258, UTF8_MB4, UTF8_MB4"_lv_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 259, UTF8_MB4, UTF8_MB4"_ro_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 260, UTF8_MB4, UTF8_MB4"_sl_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 261, UTF8_MB4, UTF8_MB4"_pl_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 262, UTF8_MB4, UTF8_MB4"_et_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 263, UTF8_MB4, UTF8_MB4"_es_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 264, UTF8_MB4, UTF8_MB4"_sv_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 265, UTF8_MB4, UTF8_MB4"_tr_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 266, UTF8_MB4, UTF8_MB4"_cs_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 267, UTF8_MB4, UTF8_MB4"_da_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 268, UTF8_MB4, UTF8_MB4"_lt_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 269, UTF8_MB4, UTF8_MB4"_sk_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 270, UTF8_MB4, UTF8_MB4"_es_trad_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 271, UTF8_MB4, UTF8_MB4"_la_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 272, UTF8_MB4, UTF8_MB4"_fa_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 273, UTF8_MB4, UTF8_MB4"_eo_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 274, UTF8_MB4, UTF8_MB4"_hu_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 275, UTF8_MB4, UTF8_MB4"_hr_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 276, UTF8_MB4, UTF8_MB4"_si_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 277, UTF8_MB4, UTF8_MB4"_vi_0900_ai_ci", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 278, UTF8_MB4, UTF8_MB4"_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 279, UTF8_MB4, UTF8_MB4"_de_pb_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 280, UTF8_MB4, UTF8_MB4"_is_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 281, UTF8_MB4, UTF8_MB4"_lv_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 282, UTF8_MB4, UTF8_MB4"_ro_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 283, UTF8_MB4, UTF8_MB4"_sl_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 284, UTF8_MB4, UTF8_MB4"_pl_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 285, UTF8_MB4, UTF8_MB4"_et_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 286, UTF8_MB4, UTF8_MB4"_es_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 287, UTF8_MB4, UTF8_MB4"_sv_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 288, UTF8_MB4, UTF8_MB4"_tr_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 289, UTF8_MB4, UTF8_MB4"_cs_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 290, UTF8_MB4, UTF8_MB4"_da_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 291, UTF8_MB4, UTF8_MB4"_lt_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 292, UTF8_MB4, UTF8_MB4"_sk_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 293, UTF8_MB4, UTF8_MB4"_es_trad_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 294, UTF8_MB4, UTF8_MB4"_la_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 295, UTF8_MB4, UTF8_MB4"_fa_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 296, UTF8_MB4, UTF8_MB4"_eo_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 297, UTF8_MB4, UTF8_MB4"_hu_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 298, UTF8_MB4, UTF8_MB4"_hr_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 299, UTF8_MB4, UTF8_MB4"_si_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 300, UTF8_MB4, UTF8_MB4"_vi_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{ 303, UTF8_MB4, UTF8_MB4"_ja_0900_as_cs", 1, 4, mysqlnd_mbcharlen_utf8_id, check_mb_utf8_valid_id, LOWEST_MB_UTF8},
+	{   0, NULL, NULL, 0, 0, mysqlnd_mbcharlen_null_id, check_null_id, 0x100}
 };
 /* }}} */

diff --git a/ext/mysqlnd/mysqlnd_structs.h b/ext/mysqlnd/mysqlnd_structs.h
index ce102650b03..02c31358da4 100644
--- a/ext/mysqlnd/mysqlnd_structs.h
+++ b/ext/mysqlnd/mysqlnd_structs.h
@@ -182,7 +182,6 @@ typedef struct st_mysqlnd_charset
 	const char		*collation;
 	unsigned int	char_minlen;
 	unsigned int	char_maxlen;
-	const char		*comment;
 	short			mb_charlen;
 	short			mb_valid;
 	unsigned int    lowest_mb_byte;