1

MySQL エンジン: InnoDB

テーブルがあり、主キーとして 2 つの文字列が必要です。この理由は、これらの 2 つの文字列に依存する ON DUPLICATE KEY UPDATE が必要だからです。それ、どうやったら出来るの?事前にタイ。

4

2 に答える 2

5

それらを主キーとして使用しないでください。代わりにそれらをUNIQUEインデックスとして使用してくださいON DUPLICATE KEY UPDATE。それでも機能します。主キーを、データから完全に独立した単一の整数型の列に設定することをお勧めします。

この例を見てください:http ://sqlfiddle.com/#!2 / 41f2d / 1

于 2012-11-10T11:24:19.873 に答える
1

テーブルを変更して、その2つの列を主キーとして定義できます。

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)
)
于 2012-11-10T11:21:52.030 に答える