acuerdo con este artículorepresentación de bytes en BINARY_CHECKSUM()?
http://decipherinfosys.wordpress.com/2007/05/18/checksum-functions-in-sql-server-2005/
dicen que
BINARY_CHECKSUM() devuelve el mismo valor si los elementos de dos expresiones tienen el mismo tipo y representación de bytes. Por lo tanto, “2Volvo director 20" y “30 3Volvo director" proporcionará el valor misma
mi pregunta es ¿qué se byte representation
?
y por qué
SELECT BINARY_CHECKSUM('2Volvo Director 20' )// -1356512636
SELECT BINARY_CHECKSUM('3Volvo Director 30' )// -1356512636
da los mismos resultados?
el byte de '' es no como el byte de ''
entonces ... ¿por qué inventaron esto si no es exacto? o tiene algunos agujeros negros (el ciclo de 16 ') –
Todos cometemos errores, incluso Microsoft :) En particular, crear funciones hash es extremadamente difícil, mientras que crear malas funciones hash es extremadamente fácil. Al menos [los documentos para 'CHECKSUM'] (http://msdn.microsoft.com/en-us/library/ms189788.aspx) dicen (básicamente)" no lo use ". – AakashM
SELECCIONE BINARY_CHECKSUM ('fa') SELECCIONE BINARY_CHECKSUM ('dA') ambos producen los mismos valores ... 1537 – nav