Column Character Set and Collation : COLLATION Character Set « Table « MySQL Tutorial






Every CHAR, VARCHAR, or TEXT Column has a column character set and a column collation.

Column definition syntax has optional clauses for specifying the column character set and collation:

col_name {CHAR | VARCHAR | TEXT} (col_length)[CHARACTER SET charset_name] [COLLATE collation_name]
CREATE TABLE Table1
(
    column1 VARCHAR(5) CHARACTER SET latin1 COLLATE latin1_german1_ci
);

MySQL chooses the column character set and collation in the following manner:

If both CHARACTER SET X and COLLATE Y were specified, then character set X and collation Y are used.

If CHARACTER SET X was specified without COLLATE, then character set X and its default collation are used.

If COLLATE Y was specified without CHARACTER SET, then the character set associated with Y and collation Y.

Otherwise, the table character set and collation are used.

Quote from MySQL document: www.mysql.com









4.20.COLLATION Character Set
4.20.1.Character Sets and Collations in MySQL
4.20.2.Server Character Set and Collation
4.20.3.Every database has a database character set and a database collation.
4.20.4.List the available character set
4.20.5.TEXT CHARACTER SET latin1 COLLATE latin1_bin
4.20.6.character_set_system
4.20.7.Using alter command to change characgter set
4.20.8.The output from SHOW COLLATION includes all available character sets.
4.20.9.The SHOW CHARACTER SET command shows all available character sets.
4.20.10.Table and Column Definition with character and collate
4.20.11.Database, Table, and Column Definition with Character and collate
4.20.12.SHOW CREATE DATABASE displays the CREATE DATABASE statement that creates a given database:
4.20.13.SHOW CREATE TABLE displays the CREATE TABLE statement to create a given table.
4.20.14.The SHOW COLUMNS statement displays the collations of a table's columns when invoked as SHOW FULL COLUMNS
4.20.15.Table Character Set and Collation
4.20.16.Column Character Set and Collation