How do I see what character set a MySQL database / table / column is?

前端 未结 15 1618
失恋的感觉
失恋的感觉 2020-11-22 06:33

What is the (default) charset for:

  • MySQL database

  • MySQL table

  • MySQL column

15条回答
  •  陌清茗
    陌清茗 (楼主)
    2020-11-22 06:53

    SELECT TABLE_SCHEMA,
           TABLE_NAME,
           CCSA.CHARACTER_SET_NAME AS DEFAULT_CHAR_SET,
           COLUMN_NAME,
           COLUMN_TYPE,
           C.CHARACTER_SET_NAME
      FROM information_schema.TABLES AS T
      JOIN information_schema.COLUMNS AS C USING (TABLE_SCHEMA, TABLE_NAME)
      JOIN information_schema.COLLATION_CHARACTER_SET_APPLICABILITY AS CCSA
           ON (T.TABLE_COLLATION = CCSA.COLLATION_NAME)
     WHERE TABLE_SCHEMA=SCHEMA()
       AND C.DATA_TYPE IN ('enum', 'varchar', 'char', 'text', 'mediumtext', 'longtext')
     ORDER BY TABLE_SCHEMA,
              TABLE_NAME,
              COLUMN_NAME
    ;
    

提交回复
热议问题