Onko hyvä idea käyttää md5 arvo tietokannassa uniikki indeksinä?
Tarkoituksena on tallentaa tietokantaan noin 2-30 sanan pitkät tekstit, joten varchar on liian lyhyt, joten pitäisi käyttää TEXT kenttää. Mutta miten voisi nopeasti tarkistaa onko merkkijono jo olemassa tietokannassa? Ajattelin laskea tekstikentän md5 arvo joka on 32 merkkiä pitkä ja käyttää sitä uniikki indeksinä.
Mielipiteitä?
md5 indeksinä ?
1
284
Vastaukset
- tohlo
Ihan hyvä idea, paitsi että -- kuten varmaan tiedät -- kahden eri merkkijonon md5-hash voi olla sama. Melko harvinaista tämä kuitenkin on, mutta täysin mahdollista. Voisit siis ehkä laskea hashin kahdella eri tavalla ja käyttää niitä uniikkeina indekseinä (avainkenttinä).
Tietysti myös kirjainkoot, välimerkit, ym. tulee ottaa huomioon, koska esim. yksikin ylimääräinen väli pisteen jälkeen tuottaa merkkijonosta eri hashin. Ehkä siis välimerkit ja muut erikoismerkit voisit ottaa pois sekä muuntaa merkkijonon pienille kirjaimille ennen hashin ottamista ja tarkistamista.
Lisäksi voit samuuden tarkistuksessa vertailla esim. ensimmäistä sanaa tai N ensimmäistä merkkiä merkkijonosta, tuon md5:n lisäksi. Sinänsä md5 on kuitenkin minusta ihan hyvä id-kentän arvoksi, tai erityisen integer-tyyppisen id-kentän lisänä uniikkina indeksinä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 501577
- 621532
SDP:n lyhyt selviytymisopas
1. Komitea on vastaus, oli kysymys mikä tahansa Jos maailma on muuttumassa tai jossain palaa, demari ei hätiköi. Ensin p101108- 60911
- 49884
Mitä se olisi
Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?41765Toivoisitko
Toivoisitko, että kaivattusi olisi introvertimpi tai extrovertimpi? Itsenäinen tai tarvitsisi enemmän apua/sinua? Osoit86620Nanna Karalahti :Paljastus bisneksistä Jere Karalahden kanssa!
Ottanut yhteyttä seiskalehden toimittajaan ja kertonut totuuden yhteisestä Herotreeni-nimisestä verkkovalmenuksesta.118617Sotekeskus
Aloite on hyvä, kiitokset siitä. Mutta jos olette yhtään seuranneet hyvinvointialueen kokouksia niin sehän on jo nuijit32597- 38556