mariadb/mysql-test/suite/funcs_1/r/charset_collation.result
Alexander Barkov cf644785e1 MDEV-36503 add Pad_attribute column to INFORMATION_SCHEMA.COLLATIONS
Adding a new column in INFORMATION_SCHEMA.COLLATIONS:

  PAD_ATTRIBUTE ENUM('PAD SPACE','NO PAD')

and a new column Pad_attribute into SHOW COLLATION.

The new column has been added after SORTLEN but before COMMENT.
This order is compatible with MySQL-8.0 order,
with the exception that MariaDB has an extra last column COMMENT:

MariaDB [test]> desc information_schema.collations;
+--------------------+----------------------------+------+-----+---------+-------+
| Field              | Type                       | Null | Key | Default | Extra |
+--------------------+----------------------------+------+-----+---------+-------+
| COLLATION_NAME     | varchar(64)                | NO   |     | NULL    |       |
| CHARACTER_SET_NAME | varchar(32)                | YES  |     | NULL    |       |
| ID                 | bigint(11)                 | YES  |     | NULL    |       |
| IS_DEFAULT         | varchar(3)                 | YES  |     | NULL    |       |
| IS_COMPILED        | varchar(3)                 | NO   |     | NULL    |       |
| SORTLEN            | bigint(3)                  | NO   |     | NULL    |       |
| PAD_ATTRIBUTE      | enum('PAD SPACE','NO PAD') | NO   |     | NULL    |       |
| COMMENT            | varchar(80)                | NO   |     | NULL    |       |
+--------------------+----------------------------+------+-----+---------+-------+

The new Pad_attribute in SHOW COLLATION has been added as the last column.
This is also compatible with MySQL:

MariaDB [test]> show collation like 'utf8mb4_bin';
+-------------+---------+------+---------+----------+---------+---------------+
| Collation   | Charset | Id   | Default | Compiled | Sortlen | Pad_attribute |
+-------------+---------+------+---------+----------+---------+---------------+
| utf8mb4_bin | utf8mb4 |   46 |         | Yes      |       1 | PAD SPACE     |
+-------------+---------+------+---------+----------+---------+---------------+
2025-05-19 17:07:18 +04:00

41 lines
1.6 KiB
Text

DROP USER dbdict_test@localhost;
CREATE USER dbdict_test@localhost;
connect con,localhost,dbdict_test,,;
SELECT *
FROM information_schema.character_sets
WHERE character_set_name IN ('utf8mb3','latin1','binary')
ORDER BY character_set_name;
CHARACTER_SET_NAME DEFAULT_COLLATE_NAME DESCRIPTION MAXLEN
binary binary Binary pseudo charset 1
latin1 latin1_swedish_ci cp1252 West European 1
utf8mb3 utf8mb3_uca1400_ai_ci UTF-8 Unicode 3
SELECT *
FROM information_schema.collations
WHERE character_set_name IN ('utf8mb3','latin1','binary')
AND (collation_name LIKE CONCAT(character_set_name,'_general_ci')
OR
collation_name LIKE CONCAT(character_set_name,'_bin'))
ORDER BY collation_name;
COLLATION_NAME CHARACTER_SET_NAME ID IS_DEFAULT IS_COMPILED SORTLEN PAD_ATTRIBUTE COMMENT
latin1_bin latin1 47 Yes 1 PAD SPACE cp1252 West European
latin1_general_ci latin1 48 Yes 1 PAD SPACE cp1252 West European
utf8mb3_bin utf8mb3 83 Yes 1 PAD SPACE UTF-8 Unicode
utf8mb3_general_ci utf8mb3 33 Yes 1 PAD SPACE UTF-8 Unicode
SELECT *
FROM information_schema.collation_character_set_applicability
WHERE character_set_name IN ('utf8mb3','latin1','binary')
AND (collation_name LIKE CONCAT(character_set_name,'_general_ci')
OR
collation_name LIKE CONCAT(character_set_name,'_bin'))
ORDER BY collation_name, character_set_name;
COLLATION_NAME CHARACTER_SET_NAME FULL_COLLATION_NAME ID IS_DEFAULT
latin1_bin latin1 latin1_bin 47
latin1_general_ci latin1 latin1_general_ci 48
utf8mb3_bin utf8mb3 utf8mb3_bin 83
utf8mb3_general_ci utf8mb3 utf8mb3_general_ci 33
connection default;
disconnect con;
DROP USER dbdict_test@localhost;