MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLの識別子タイプ別 最大文字数の一覧まとめ

MySQLにおける識別子とは

MySQLでは、データベースやテーブルなど、オブジェクトに付けられる名前のことを識別子(identifier)と呼びます。識別子の対象となる主なオブジェクトは以下のとおりです。

  • データベース
  • テーブル
  • インデックス
  • カラム
  • エイリアス(別名)
  • ビュー
  • ストアドプロシージャ・ストアドファンクション
  • パーティション
  • テーブルスペース

これらの識別子はすべて Unicode(UTF-8) として保存されます。そのため、日本語などのマルチバイト文字も識別子として使用できます。

識別子タイプ別の最大文字数一覧

各タイプの識別子に設定できる最大長(文字数)は、次の表のとおりです。

No.識別子の種類最大長(文字数)
1データベース64
2テーブル64
3カラム64
4インデックス64
5制約(CONSTRAINT)64
6ストアドプロシージャ/ストアドファンクション64
7トリガー64
8ビュー64
9イベント64
10テーブルスペース64
11ログファイルグループ64
12エイリアス(別名)256
13複合ステートメントラベル16

識別子の最大長に関するポイント

  • 多くの識別子(データベース名・テーブル名・カラム名など)の上限は64文字で統一されています。
  • SELECT文などで使うエイリアスは最大256文字と、他より長く設定できます。
  • ストアドプログラム内の複合ステートメントラベルは16文字と短いため、簡潔な命名を心がけましょう。
  • 上限は「バイト数」ではなく「文字数」でカウントされるため、日本語などのマルチバイト文字を使った場合でも1文字として数えられます。
  • 上限を超える名前を付けようとするとエラーになるため、長い名前を付ける場合は事前に文字数を確認しておくのが安全です。
  1. MySQLでテーブルのカラム名(列名)を取得する構文とは?

    MySQLでは、information_schema.columns テーブルを参照することで、指定したテーブルのカラム名(列名)を簡単に取得できます。データベースの構造を確認したい場合や、動的にカラム情報を取得したいアプリケーションを開発する際に非常に便利な方法です。カラム名を取得する基本構文テーブルのカラム名を取得するには、以下の構文を使用します。SELECT column_name FROM information_schema.columns WHERE table_schema = データベース名 AND table_name = テーブル名;table_schema にはデータベー

  2. MySQLでテーブルの各グループごとに最大値を取得する方法

    MySQLでテーブル内の各値(グループ)ごとの最大値を取得したい場合は、GROUP BY句とMAX()関数を組み合わせて使用します。GROUP BY句が指定したカラムの値ごとに行をグループ化し、MAX()関数がそのグループ内での最大値を返してくれます。ここでは、「国名」と「人口」を格納するサンプルテーブルを使って、具体的な手順を解説していきます。1. サンプルテーブルを作成するまず、CREATE TABLE文でテーブルを作成しましょう。mysql> create table DemoTable -> ( -> CountryName varchar(20),