MySQL: データベース、テーブル、または列の文字セットを取得しますか? 質問する

MySQL: データベース、テーブル、または列の文字セットを取得しますか? 質問する

次の (デフォルトの) 文字セットは何ですか?

  • MySQL データベース

  • MySQL テーブル

  • MySQL コラム

ベストアンサー1

私のやり方はこうです -

スキーマ(またはデータベース - 同義語)の場合:

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

表の場合:

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 = "mydatabasename"
  AND T.table_name = "tablename";

列の場合:

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

おすすめ記事