に私は次のクエリを持っています。 ここでocc_date
とservice_tag
はunique
フィールドです。プライマリキーを両方の固有フィールドに設定することはできません。MySQLはユニークなフィールドの両方が一致するだけDUPLICATE KEY UPDATE、他のINSERT
私は次のことを実行しました:
ALTER TABLE occ_apps
DROP PRIMARY KEY,
ADD PRIMARY KEY (occ_date, service_tag);
そして、私は取得するには、エラー:
`#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key`
が、私はそれが(増分)を更新したいocc_date
とservice_tag
両方の一致が(すでに存在しているだけカウンタ)を1行に挿入します。そうでない場合は、新しい行を挿入する必要があります。
Software version: 5.5.53-MariaDB-1~wheezy - mariadb.org binary distribution
私はDESC occ_apps
を実行したとき、私は得る:
Field Type Null Key Default Extra
serial_no int(255) NO PRI NULL auto_increment
occ_date varchar(255) NO UNI NULL
counter int(255) NO NULL
service_tag varchar(255) YES UNI NULL
助けてください!
「一意キーを追加する(occ_date、service_tag)」これはあなたに役立つでしょう。 –
'desc occ_apps'結果を共有できますか? –
@ KeyurShahは常に代わりにSHOW CREATE TABLEを要求することをお勧めします – e4c5