MD5

Le
christophe
Bonjour,

j'ai encodé une cle en MD5 de ce style.
SELECT HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50)))
from matable

voici le un exemple de resultat
0x81DC9BDB52D04DC20036DBD8313ED055

j'envoi ca en export dans un fichier pour un client déjà une remarque le 0x
du départ à disparu
j'ai fait l'export via management studio en passant la requete du dessus en
export.

deuxieme remarque quand je remonte le fichier retour sur lequel j'ai ce
codage je le stocke en texte ou .
et la meme si je rajoute le 0x ca ne matche plus avec l'original.
car un cast en varchar() du varbinary donne pas du tout le meme resultat :(

hors en cherchant, ça à plutot l'air de coller quand je converti le en
bigint ou int d'ailleurs aussi
exemple

SELECT *
from matable
where cast(HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
cast(0x81DC9BDB52D04DC20036DBD8313ED055 as bigint)


ma question est-ce que la conversion du varbinary généré par le codage MD5
n'est pas tronqué si je le reconvertie en bigint ?

ou alors quelle serait la methode pour recuperer mes cles et pouvoir les
comparer avec celle en base sachant qu'en base c'est du varbinary ?.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Patrice
Le #11883091
Je ferais (non testé) :

SELECT *
from matable
where HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
0x81DC9BDB52D04DC20036DBD8313ED055

--
Patrice

"christophe"
Bonjour,

j'ai encodé une cle en MD5 de ce style.
SELECT HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50)))
from matable

voici le un exemple de resultat
0x81DC9BDB52D04DC20036DBD8313ED055

j'envoi ca en export dans un fichier pour un client déjà une remarque le
0x du départ à disparu
j'ai fait l'export via management studio en passant la requete du dessus
en export.

deuxieme remarque quand je remonte le fichier retour sur lequel j'ai ce
codage je le stocke en texte ou .
et la meme si je rajoute le 0x ca ne matche plus avec l'original.
car un cast en varchar() du varbinary donne pas du tout le meme resultat
:(

hors en cherchant, ça à plutot l'air de coller quand je converti le en
bigint ou int d'ailleurs aussi
exemple

SELECT *
from matable
where cast(HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
cast(0x81DC9BDB52D04DC20036DBD8313ED055 as bigint)


ma question est-ce que la conversion du varbinary généré par le codage MD5
n'est pas tronqué si je le reconvertie en bigint ?

ou alors quelle serait la methode pour recuperer mes cles et pouvoir les
comparer avec celle en base sachant qu'en base c'est du varbinary ?.








Patrice
Le #11883071
Au temps pour moi :

SELECT *
from matable
where HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50)) 0x81DC9BDB52D04DC20036DBD8313ED055

--
Patrice

"Patrice" %23thK9l$
Je ferais (non testé) :

SELECT *
from matable
where HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
0x81DC9BDB52D04DC20036DBD8313ED055

--
Patrice

"christophe"
Bonjour,

j'ai encodé une cle en MD5 de ce style.
SELECT HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50)))
from matable

voici le un exemple de resultat
0x81DC9BDB52D04DC20036DBD8313ED055

j'envoi ca en export dans un fichier pour un client déjà une remarque le
0x du départ à disparu
j'ai fait l'export via management studio en passant la requete du dessus
en export.

deuxieme remarque quand je remonte le fichier retour sur lequel j'ai ce
codage je le stocke en texte ou .
et la meme si je rajoute le 0x ca ne matche plus avec l'original.
car un cast en varchar() du varbinary donne pas du tout le meme resultat
:(

hors en cherchant, ça à plutot l'air de coller quand je converti le en
bigint ou int d'ailleurs aussi
exemple

SELECT *
from matable
where cast(HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
cast(0x81DC9BDB52D04DC20036DBD8313ED055 as bigint)


ma question est-ce que la conversion du varbinary généré par le codage
MD5 n'est pas tronqué si je le reconvertie en bigint ?

ou alors quelle serait la methode pour recuperer mes cles et pouvoir les
comparer avec celle en base sachant qu'en base c'est du varbinary ?.












christophe
Le #11883061
effectivement ton cas fonctionne,

toutefois j'ai le retour dans un fichier TXT donc comment faire la
comparaison
que tu annonce sans conversion qui du coup risque de denaturer le typage ?

en gros comment faire cette comparaison
select t1.*
from matable as T1, matable_demonfichier_retour as T2
where t1.dedup_md5 = t2.colonne_recup




----- Original Message -----
From: "Patrice" Newsgroups: microsoft.public.fr.sqlserver
Sent: Thursday, January 31, 2008 12:16 PM
Subject: Re: MD5


Au temps pour moi :

SELECT *
from matable
where HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50)) > 0x81DC9BDB52D04DC20036DBD8313ED055

--
Patrice

"Patrice" %23thK9l$
Je ferais (non testé) :

SELECT *
from matable
where HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
0x81DC9BDB52D04DC20036DBD8313ED055

--
Patrice

"christophe" news:
Bonjour,

j'ai encodé une cle en MD5 de ce style.
SELECT HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50)))
from matable

voici le un exemple de resultat
0x81DC9BDB52D04DC20036DBD8313ED055

j'envoi ca en export dans un fichier pour un client déjà une remarque le
0x du départ à disparu
j'ai fait l'export via management studio en passant la requete du dessus
en export.

deuxieme remarque quand je remonte le fichier retour sur lequel j'ai ce
codage je le stocke en texte ou .
et la meme si je rajoute le 0x ca ne matche plus avec l'original.
car un cast en varchar() du varbinary donne pas du tout le meme resultat
:(

hors en cherchant, ça à plutot l'air de coller quand je converti le en
bigint ou int d'ailleurs aussi
exemple

SELECT *
from matable
where cast(HashBytes('MD5', CAST(MY_CLE AS VARCHAR(50))) as bigint) =
cast(0x81DC9BDB52D04DC20036DBD8313ED055 as bigint)


ma question est-ce que la conversion du varbinary généré par le codage
MD5 n'est pas tronqué si je le reconvertie en bigint ?

ou alors quelle serait la methode pour recuperer mes cles et pouvoir les
comparer avec celle en base sachant qu'en base c'est du varbinary ?.
















Publicité
Poster une réponse
Anonyme