Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Consultar a la base de datos por el MD5 de una cadena

Hola,

Me pregunto si MySQL cuenta con alguna función que calcule el MD5 de una cadena... no sé cómo explicarlo... digamos que "al vuelo". Me explicaré. Supongamos que guardamos el MD5 de una URL y queremos consultar a la base de datos para averiguar cuántas URLs como la nuestra hay, pero, claro, contamos con el MD5 de la URL, no con la propia URL, así que habría que hacer algo así... supongo y siempre que sea posible:
Código SQL [-]
SELECT COUNT(*) FROM enlaces WHERE MD5(enlace_url) =  URL
Suponiendo que en la consulta SQL "URL" es una variable, que contiene, justamente, el MD5 de una URL cualquiera y "MD5()" una hipotética función que exista en MySQL... ¿Es esto posible? ¿Se os ocurre alguna manera de hacerlo? Muchas gracias de antemano.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #2  
Antiguo 29-12-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Hola dec,

pues parece que sí, ¿has buscado por google o es que me he liado yo?

http://www.mysql-hispano.org/page.php?id=44
http://mysql.conclase.net/curso/index.php?fun=MD5

Saludos
Responder Con Cita
  #3  
Antiguo 29-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Y por que en la base de datos junto con la url no guardamos su md5, así podríamos hacer la búsqueda por md5. Eso solo supondría 32 caracteres extra por cada url.
Responder Con Cita
  #4  
Antiguo 29-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Bicho 1 Seoane 0
Responder Con Cita
  #5  
Antiguo 29-12-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Creo que sería mejor así:

Bicho: 1 - Agonioso: muchos

Saludos

p.d: no cantes victoria. Aún me ipugnarán el resultado y me quitarán el único punto que tengo.
Responder Con Cita
  #6  
Antiguo 29-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bueno. Muchas gracias a los dos. Pensé lo que dices Seoane, pero, joroba, tacita a tacita... digo que aunque ocupen poco los MD5 algo ocuparán... No; pero, lo cierto es que como dice Bicho existe en MySQL la función "MD5" de modo que puede hacerse algo así:

Código SQL [-]
SELECT MD5(enlace_url) AS enlace_md5_url

Es justo lo que necesitaba... y seguro que aunque no para ahora es bueno tenerlo en cuenta, puesto que a veces convenga comparar MD5's y no valores como las URLs, precisamente, que pueden resultar muy "farragosas". Bueno. No me enrollo más. Muchas gracias a ambos.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 29-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Es justo lo que necesitaba... y seguro que aunque no para ahora es bueno tenerlo en cuenta, puesto que a veces convenga comparar MD5's y no valores como las URLs, precisamente, que pueden resultar muy "farragosas". Bueno. No me enrollo más. Muchas gracias a ambos.
Precisamente los sistemas antiphishing que están implementando algunos navegadores funcionan de una forma similar. Es decir, para comprobar si una url esta en la "lista negra" la envían a un servidor para que lo compruebe en una base de datos, pero en vez de enviar la url "tal cual" mandan su hash, de esa manera se supone que se mantiene la privacidad. Aunque ahora que lo pienso, si guardan en su base de datos el valor de la url y su hash, podrían encontrar la url original a partir de su hash ... ya estoy divagando otra vez
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consultar otra tabla desde un Dbgrdid y traerse los datos al Dbgrid alejandroalba Conexión con bases de datos 2 08-05-2006 18:30:42
Mejorar velocidad de un SQL al consultar muchos datos. RONPABLO SQL 3 24-11-2005 18:10:02
como estraer datos de una cadena Ricsato Varios 2 11-09-2004 19:37:08
Buscar cadena dentro de otra cadena doverzhoff Varios 4 27-01-2004 05:27:15
Reto Para Expertos En Base De Datos Y Tipos De Datos.... (blob) frankmch Conexión con bases de datos 2 08-09-2003 19:44:52


La franja horaria es GMT +2. Ahora son las 20:21:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi