SQL CHECKSUM() og MD5 er Hash-funktioner . Hashing er en envejsalgoritme, som kan tage et hvilket som helst antal tegn/bytes og returnere et fast antal tegn/bytes.
Det betyder, at uanset om dit input er 1 karakter eller en hel bog (Krig og Fred), vil du få samme længde svar tilbage. Så input er uendeligt antal kombinationer, mens outputtet er endeligt. Baseret på det er det uundgåeligt at få den samme Hash for forskellige værdier. Det kaldes Hash-kollision . Gode Hash-algoritmer forsøger at afbøde dette for at gøre det svært at finde disse kolliderende værdier.
Men nok teori om hashing. Her er præcis svaret på dit spørgsmål. Hvad er problem med CHECKSUM() ?