主键与键

use*_*850 13 mysql key primary-key

创建包含数据库结构的mysql转储时,其中一个表显示以下内容:

CREATE TABLE `completedTransactions` (
  `paymentId` int(10) unsigned NOT NULL,
  `timestamp` int(15) unsigned NOT NULL,
  `actionTaken` varchar(25) NOT NULL,
  `response` varchar(255) NOT NULL,
  `responseCode` int(5) NOT NULL,

  PRIMARY KEY  (`paymentId`,`timestamp`),
  KEY `paymentId` (`paymentId`),
Run Code Online (Sandbox Code Playgroud)

主键是我所期待的,但我不确定最后一行是什么?

KEY `paymentId` (`paymentId`),
Run Code Online (Sandbox Code Playgroud)

这与索引有关吗?

Dan*_*llo 13

是的,KEY关键字只是关键字的别名INDEX.

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
  ...
  {INDEX|KEY} [index_name] [index_type] (index_col_name,...)
      [index_option] ...
Run Code Online (Sandbox Code Playgroud)

来源:MySQL文档:CREATE TABLE