Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie sehe ich, welchen Zeichensatz eine MySQL-Datenbank/Tabelle/Spalte hat?

So würde ich es machen -

Für Schemas (oder Datenbanken - sie sind Synonyme):

SELECT default_character_set_name FROM information_schema.SCHEMATA 
WHERE schema_name = "schemaname";

Für Tabellen:

SELECT CCSA.character_set_name FROM information_schema.`TABLES` T,
       information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA
WHERE CCSA.collation_name = T.table_collation
  AND T.table_schema = "schemaname"
  AND T.table_name = "tablename";

Für Spalten:

SELECT character_set_name FROM information_schema.`COLUMNS` 
WHERE table_schema = "schemaname"
  AND table_name = "tablename"
  AND column_name = "columnname";