dedlfix: Vorschlag: UNIQUE-Index nicht über text, sondern hash(text)?

Beitrag lesen

Hi!

Deshalb würde ich in einem solchen Fall, wo man die UNIQUE-Eigenschaft über längere Texte braucht, vorschlagen, den MD5-Wert dieses langen Textes in einer zusätzlichen Spalte abzulegen - und *darauf* den UNIQUE-Index zu setzen. Die sehr geringe Kollisionsgefahr sollte m.E. ausreichen, um das zweimalige Eintragen eines Textes zu verhindern - ohne sich schädlich auszuwirken, in dem zwei Texte für gleich gehalten werden, die es nicht sind. (Wenn man diesbezüglich Bedenken hat, kann man auch noch einen „besseren“ Hash-Algorithmus als MD5 wählen.)

Das Eintragen kann man mit einem Trigger automatisieren. Wenn man wirklich Kollisionsbedenken hat, kann man auch das Ergebnis eines zweites Checksum-Verfahrens dazunehmen, das sollte dann noch schwieriger zu kollisionieren sein.

Lo!