質問: **MySQLカラムに対して後からUNIQUE制約を追加したいです。** 下記コードで動作すると思われるのですが、uk_name 部分について ``` ALTER TABLE table_name ADD UNIQUE uk_name (column1, column2); ``` --- **Q1.この名前は何ですか?** ・ユニークキー名? ・インデックスキー名? ・公式サイトで ALTER TABLE 構文を確認してみたのですが、ドキュメントの見方が良く分かりませんでした ``` | ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...) [index_option] ... ``` --- **Q2.この名前に使用できる文字は何ですか?** 使用不可な文字 や 文字数制限 などありますか? --- **Q3.この名前を後から使用しますか?** ・この名前を使用する場面を思いつかないのですが、ここに付与した名前を使用して後から呼び出したりしますか? ・UNIQUE制約のありなしで条件分岐する際に必要?? 忘れないよう控えておいた方が良いですか?
回答: 1. index_name なので「インデックス名」でいいと思います。5.6 の日本語マニュアルにもそう書かれています。 2. インデックス名等の識別子についてはここに書かれています。 3. drop index や select の use 等で使用されます。