Pre-General Availability Draft: 2017-07-17
ALTER {DATABASE | SCHEMA} [db_name]
alter_specification ...
alter_specification:
[DEFAULT] CHARACTER SET [=] charset_name
| [DEFAULT] COLLATE [=] collation_name
ALTER DATABASE enables you to
change the overall characteristics of a database. These
characteristics are stored in the data dictionary. To use
ALTER DATABASE, you need the
ALTER privilege on the database.
ALTER
SCHEMA is a synonym for ALTER
DATABASE.
The database name can be omitted from the first syntax, in which case the statement applies to the default database.
National Language Characteristics
The CHARACTER SET clause changes the default
database character set. The COLLATE clause
changes the default database collation. Section 10.1, “Character Set Support”,
discusses character set and collation names.
You can see what character sets and collations are available
using, respectively, the SHOW CHARACTER
SET and SHOW COLLATION
statements. See Section 13.7.5.3, “SHOW CHARACTER SET Syntax”, and
Section 13.7.5.4, “SHOW COLLATION Syntax”, for more information.
If you change the default character set or collation for a database, stored routines that use the database defaults must be dropped and recreated so that they use the new defaults. (In a stored routine, variables with character data types use the database defaults if the character set or collation are not specified explicitly. See Section 13.1.13, “CREATE PROCEDURE and CREATE FUNCTION Syntax”.)