user_interactions
4つの列を持つテーブルがあります。
user_1
user_2
type
timestamp
主キーは(user_1,user_2,type)
に変更したい(user_2,user_1,type)
だから私がしたことは:
drop primary key ...
add primary key (user_2,user_1,type)...
そして出来上がり...
問題は、データベースがサーバー上にあることです。
したがって、主キーを更新する前に、すでに多くの重複が侵入しており、それらは継続的に侵入しています。
何をすべきか?
私が今したいのは、重複を削除して最新のものtimestamp
(テーブルの列)を保持することです。
そして、どういうわけか、もう一度主キーを更新します。
16
私は自分の息の中で呪ったすべてのDBAに突然気分が悪くなりました...
—
Ignacio Vazquez-Abrams
次回、主キーと同じ列を持つ一意のキーを追加し、主キーを更新します
—
knittl
@Ignacio、それはサーバー上にありますが、それはバックアップ/バックアップサーバーです:-)。私はDBAではありませんが、実際にライブサーバーでこれを試すことはありません:-)
—
simplfuzz
@knittl、はい、それは私が今思っていることですが、非常に遅いですが:-)
—
simplfuzz
@pixeline:複合主キーです。
—
Ignacio Vazquez-Abrams、