MySQL 引擎:InnoDB
我有一张桌子,我需要两个字符串作为主键。这样做的原因是因为我希望 ON DUPLICATE KEY UPDATE 取决于这两个字符串。我怎么做?提前泰。
MySQL 引擎:InnoDB
我有一张桌子,我需要两个字符串作为主键。这样做的原因是因为我希望 ON DUPLICATE KEY UPDATE 取决于这两个字符串。我怎么做?提前泰。
您不应将它们用作主键。将它们用作UNIQUE
索引,并且ON DUPLICATE KEY UPDATE
仍然可以使用。我建议您将主键设置为完全独立于您的数据的单个整数类型列。
您可以更改表并将这两列定义为主键,
ALTER TABLE myTable ADD PRIMARY KEY (colA, colB);
或在创建表期间
CREATE TABLE myTable
(
colA INT,
colB INT,
-- other fields here, ....
CONSTRAINT tb_pk PRIMARY KEY (colA, colB)
)