sql >> Databasteknik >  >> RDS >> Mysql

Steg för att implementera hashable i PHP och Mysql

Jag tror att din idé om en hashtabell är lite [nedlagd]. Hashtabeller bryter ner nycklar i listor som är lika. Till exempel:hashtabell baserad på första bokstaven i namnet, så det skulle finnas 26 listor. Din hash är den första bokstaven i namnet, vilket sedan gör det snabbare att söka igenom.

md5, sha1 används för att härleda hash som används för att verifiera att data inte har manipulerats. de kommer vanligtvis i antingen 128-bitars eller 160-bitarsversioner. Så det tar X data och skickar det genom en hash för att komma fram till en 128-bitars alfanumerisk sträng som ska vara densamma oavsett var den görs. Detta är vanligtvis en säkerhetsgrej.

EDIT: Expanderar på frågan om hur man härleder nycklar.

Du kan använda en modul av data för att skapa en nyckel att använda för raden. I exemplet data % X där X är det totala antalet nycklar du vill ha. Problemet med detta är att X är svårt att hitta; om du har 20 objekt är det möjligt att göra X till 20 och gör det en snabb sökning eftersom varje objekt har sin egen rad. Men om du har 1000 artiklar är det INTE möjligt att göra % 1000. Att göra något som X =75 skulle fungera bättre för detta.



  1. MySQL:=sant vs är sant på BOOLEAN. När är det lämpligt att använda vilken? Och vilken är leverantörsoberoende?

  2. Hur lägger man till PostgreSQL-datakälla till WildFly 9.0?

  3. Vet du när du ska försöka igen eller misslyckas när du anropar SQL Server från C#?

  4. ORDER BY-satsen är ogiltig i vyer, inline-funktioner, härledda tabeller, underfrågor och vanliga tabelluttryck