主キーなしで InnoDB テーブルを作成することは可能ですか?
InnoDB テーブルは PK の周りにクラスター化されたインデックスとして構造化されているため、PK のないテーブルの構造はどのようなものになるでしょうか? そのテーブルはクラスター化されたインデックスのままですが、セカンダリ キーの周りにあるのでしょうか?
ありがとう。
主キーなしで InnoDB テーブルを作成することは可能ですか?
InnoDB テーブルは PK の周りにクラスター化されたインデックスとして構造化されているため、PK のないテーブルの構造はどのようなものになるでしょうか? そのテーブルはクラスター化されたインデックスのままですが、セカンダリ キーの周りにあるのでしょうか?
ありがとう。
http://www.sqlinfo.net/mysqldocs/v50/storage-engines.html#innodb-table-and-index
テーブルに PRIMARY KEY を定義しない場合、MySQL は NOT NULL カラムのみを持つ最初の UNIQUE インデックスを主キーとして選択し、InnoDB はそれをクラスター化インデックスとして使用します。テーブルにそのようなインデックスがない場合、 InnoDB はクラスター化されたインデックスを内部的に生成します。このインデックスでは、 InnoDB がそのようなテーブルの行に割り当てた行 ID によって行が並べられます。行 ID は 6 バイトのフィールドで、新しい行が挿入されると単調に増加します。したがって、行 ID によって並べ替えられた行は、物理的に挿入順に並んでいます。