Nach einigen Änderungen in der DB, einige Benutzer doppelt (aber mit anderen Werte). Wenn Benutzer versuchen, sich anzumelden, melden sie sich bei dem Konto mit dem neuen Wert user_key
an und sehen daher keinen Verlauf des Kontos.Bitten um Ideen, um user_key Felder zu wechseln
In der Tabelle alles sieht wie folgt aus:
user_key username lower_username
-------------------------------- -------- --------------
8ad7d2d65d424a40015d424b57500107 mtamu mtamu <- duplicated user
8ada96025245dad801535faba00d016e mtamu NULL <- old user
ich den alten Benutzer user_key
Wert zu kopieren versucht, bekam aber einen Fehler:
UPDATE user_mapping
SET user_key = '8ada96025245dad801535faba00d016e' WHERE user_key = '8ad7d2d65d424a40015d424b57500107'
Violation of PRIMARY KEY constraint 'PK__user_map__E1CC8CC0049C3729'. Cannot insert duplicate key in object 'dbo.user_mapping'. The duplicate key value is (8ada96025245dad801535faba00d016e).
ich ohne Glück noch eine andere Idee versucht :
UPDATE user_mapping
SET user_key = '1' WHERE user_key = '8ada96025245dad801535faba00d016e'
UPDATE user_mapping
SET user_key = '8ada96025245dad801535faba00d016e' WHERE user_key = '8ad7d2d65d424a40015d424b57500107'
The UPDATE statement conflicted with the REFERENCE constraint "FK_CONTENT_LABEL_OWNER". The conflict occurred in database "confluence5_8_18", table "dbo.CONTENT_LABEL", column 'OWNER'.
Ich frage nach Ideen, wie Benutzer ihre alten Konten anmelden können.
löschen Sie einfach das Duplikat ... – scsimon
Was DBMS? (Sieht aus wie SQL Server) – RBarryYoung
Es ist SQL Server – Marijus