Autor Zpráva
Graja125
Profil *
Mam tabulku (id, idmd5, nazov)


a ked pridavam novy INSERT zaznam tak chcem aby mi tlo ID ktore je, aby mi z neho spravilo aj MD5 verziu,


teda

5 5s456as4as59s45as6asd45fgefd nazov


Len ako tee insert ma vyzerat?

INSERT (md5(???), 'nazov')

lebo ja neviem ake bude id....da sa to??
MacDionisio
Profil *
Za předpokladu, že nebudeš mazat řádky, tak můžeš vždy před vložením spočítat řádky v DB a přičíst 1 ;)
Nox
Profil
Graja125
možná by šlo (možná to nemusí být přes poddotaz, nějak to vyzkoušej)

INSERT (MD5(MAX(select ID from tabulka),'nazov')
Graja125
Profil *

INSERT (MD5(MAX(select ID from tabulka),'nazov')


nefunguje to nejako, preco?
Graja125
Profil *
akeho typu ma byt policku kde je md5???


char (40) alebo??
Kajman_
Profil *
po insertu
update tabulka set idmd5=md5(id) where id=last_insert_id()
Joker
Profil
Graja125
Poznámka, jestli se v tabulce ukládá sloupec ID, ukládat MD5(id) mi přijde jako nadbytečná informace (kdykoliv bych takový sloupec potřeboval, můžu udělat "SELECT MD5(id) AS idmd5 FROM tabulka")
nightfish
Profil
Poznámka, jestli se v tabulce ukládá sloupec ID, ukládat MD5(id) mi přijde jako nadbytečná informace (kdykoliv bych takový sloupec potřeboval, můžu udělat "SELECT MD5(id) AS idmd5 FROM tabulka")
někdy je vhodné používat, kvůli zvýšení rychlosti, nenormalizovanou databázi (a navíc zrovna výpočet md5() není imho úplně triviální, takže je lepší jej spočítat jednou než pořád dokola)
ninja
Profil
Spise bych se zamyslel jaky vyznam na MD5(id). Jestli nejake pseudo ochrana hashem, tak je to potreba necim osolit, jinak je to velmi snadno odhalitelne. Radeji tedy MD5(CONCAT(id,heslo,NOW())).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: