![]() |
Como generar localizador de reserva aleatorio tipo ZX32B1 Hola estoi montando una base datos para una agencia de reserva de cruceros en la que tengo una tabla con una clave primaria que viene a ser el identificador de la reserva que se le da al cliente al finalizar la compra. La historia es que de momento esa clave es un entero que se autoincrementa tomando valores conecutivos. Quisiera saber si existe alguna forma de pedirle a mysql que genere una clave de 6 caracteres (dígitos y letras) pero con valores aleatorios no consecutivos teniendo en cuenta que no pueden repetirse. Algunos ejemplos de localizadores podrían ser los siguientes: TR45D3S XZCC301 HLPO961 Con seis caracteres es más que suficiente porque cada uno puede tomar valores desde la A a la Z y del 0 al 9 es decir 37 valores distintos. 37 ^6 = 2.565.726.409 reservas posible. En el peor de los casos la agencia podría realizar 600.000 reservas al año asi que me da de sobra. Al tomar valores aleatorios de alguna manera tengo que garantizar que entre reservas queden suficientes valores sin asignar para evitar que al tratar de asigmar un valor ya utilizado tenga bastantes probabilidades de encontrar aleatoriamente otro que este libre para usar. Gracias por la ayuda y perdon por el rollo del final :-) |
Re: Como generar localizador de reserva aleatorio tipo ZX32B1 Mejor que lo hagas programándolo y no dejando a MySQL solo con eso... Si usas php podrías usar algo como Código PHP: |
Re: Como generar localizador de reserva aleatorio tipo ZX32B1 Gracias por la respuesta,en mi caso estoi trabajando con JSP y Servlet pero me sirve igual. Cuando lo adapte y lo pruebe lo publico por si le sirve de utilidad a alguien. Gracias PD: he conseguido generar el localizador aleatorio con procedure y trigger. Lo podeis ver en este foro en el hilo: Generar Localizador Reserva aleatorio con PROCEDURE Y TRIGGER En w w w . forosdelweb.com/showthread.php?t=474036 Un saludo Jorge F.M. (UAX Calico) |
| La zona horaria es GMT -6. Ahora son las 10:17. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.