的MySQL 引擎:InnoDB
我有一个表,我需要两个字符串作为主键。 这是因为我希望ON DUPLICATE KEY UPDATE取决于这两个字符串。 我怎么做? Ty提前。
答案 0 :(得分:4)
您不应将它们用作主键。请将它们用作UNIQUE
索引,ON DUPLICATE KEY UPDATE
仍可使用。我建议您将主键设置为完全独立于数据的单个整数类型列。
看一下这个例子:http://sqlfiddle.com/#!2/41f2d/1
答案 1 :(得分:1)
您可以更改表并将这两列定义为主键
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)
)