Conjunto de Caracteres e Collation de Banco de Dados
Todo banco de dados tem um conjunto de caracteres de banco de dados e uma collatio de banco de dados, que não podem ser nulos. Os comandos CREATE DATABASE e ALTER DATABASE agora possuem cláusulas opcionais para especificarem o collation e conjunto de caracteres de banco de dados:
CREATE DATABASE db_name [DEFAULT CHARACTER SET character_set_name [COLLATE collation_name]] ALTER DATABASE db_name [DEFAULT CHARACTER SET character_set_name [COLLATE collation_name]]
Exemplo:
CREATE DATABASE db_name DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
O MariaDB escolhe o conjunto de caracteres e collations do banco de dados desta forma:
- Se
CHARACTER SET XeCOLLATE Yforam especificados, então o conjunto de caracteres éXe a é collationY. - Se
CHARACTER SET Xfoi especificado semCOLLATE, então o conjunto de caracteres éXe a collation é o padrão. - Senão utiliza o conjunto de caracteres e a collation de servidor.
A sintaxe CREATE DATABASE ... DEFAULT CHARACTER SET ... do MariaDB é análoga a sintaxe CREATE SCHEMA ... CHARACTER SET ... do padrão SQL. Por isto, é possível criar bancos de dados com com conjunto de caracteres e collations diferentes, no mesmo servidor MySQL.
O conjuto de caracteres e collations do banco de dados são usados como valores padrões se o conjunto de caracteres e a collation de tabela não forem especificados nas instruções CREATE TABLE. Eles não possuem nenhum outro propósito.