多對多對映表

  • 該表缺乏 AUTO_INCREMENT id - 給出的 PK 是’自然’PK; 代理人沒有充分的理由。
  • MEDIUMINT - 這是一個提醒,所有 INTs 應該做得儘可能小(更小⇒更快)。當然,此處的宣告必須與連結到的表中的定義相匹配。
  • UNSIGNED - 幾乎所有的 INT 都可能被宣告為非負的
  • NOT NULL - 嗯,這是真的,不是嗎?
  • InnoDB - 比 MyISAM 更有效,因為 PRIMARY KEY 與 InnoDB 中的資料聚集在一起。
  • INDEX(y_id, x_id) - PRIMARY KEY 使得向一個方向高效; 使另一方向有效。沒必要說 UNIQUE; 這將是 INSERTs 的額外努力。
  • 在二級索引中,只說 INDEX(y_id) 會起作用,因為它會隱含包含 x_id。但我寧願讓我更明顯地希望有一個覆蓋指數。

可能希望向表中新增更多列; 這很少見。額外的列可以提供有關表所代表的關係的資訊。

可能想要新增 FOREIGN KEY 約束。