Ver Mensaje Individual
  #27  
Antiguo 10-11-2015
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
Cita:
Empezado por agustibaldo Ver Mensaje
El problema es que estuve buscando alguna librería o función de hash/encoding y no pude encontrar ninguna. Podrías recomendarme alguna?
[roman], estoy probando justo eso, cuando lo tenga resuelto les cuento.

Muchas gracias.
Con lo que dice roman, ni falta hace emplear una biblioteca que te lo haga. No es algo taan complicado en diseñar un algoritmo que haga esto:

AAAA, AAAB, AAAC ... AAAZ, AAA0, AAA1, ... AAA9, AABA, AABB, ... AABZ, AAB0, ... AAB9, ... ZZZZ, ... 9999

Y disponer en una tabla algo como:
ID - CadenaCorta - CadenaLarga
1 - AAAA - etc
2 - AAAB - etc
...

Y aquí es donde entra lo que yo dije: dependiendo de la longitud que se establezca a la cadena, y el juego de carácteres definido, tendrás la cantidad máxima de registros que puede soportar. Que para el caso de 27 letras más 10 números y una cadena de longitud de 10 será posible tener 37^10 = 4808584372417849 registros. Esto puede ser mucho o poco según el volumen de datos.

¡Y nota en como el tema de la cadena corta en realidad no hace más que hacer un intermediario más! Ya existe una relación 1-1 en un ID autonumérico y la correspondiente cadena larga. Proceder a generar una cadena corta que "identifique" o que haga de alias para cada cadena larga no deja de ser otra relación 1-1 ya existente, ya que actúa como una clave artificial más.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita