Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RenanMonteiro

id randômico com 7 digitos

Recommended Posts

estou fazendo um banco de dados para cadastrar produtos. Vou usar o campo 'codigo' como id desses produtos, por isso, quero que esse campo seja auto_increment, mas como todos sabem, a medida que eu for cadastrando, os id vão aumentando de um por um (1, 2, 3, 4, 5...) isso é padrão, claro. O que eu quero: que os ID's auto_increment sejam randomicos e usem todos 7 digitos. Exemplo:

 

Produto 1: 1548951

Produto 2: 0156986

Produto 3: 2547065

Produto 4: 1548965

 

entenderam? alguem sabe como fazer? grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma trigger de before insert e o uso da function Rand() devem resolver o problema, mas qual a vantagem de uma chave aleatória ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

INSERT INTO produtos(idProdutos) VALUES(SUBSTRING(RAND(), -7));

 

 

Em colunas chave primaria ou estrangeira é preferível que sejam numéricas e AUTO_INCREMENT,

pois são melhores para serem usadas como indices, o que resulta um melhor desempenho

de SELECTS.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não vi a vantagem ou a razão de uma chave aleatória para um ID de produto.

 

Fosse uma senha de liberação de plano de saúde ou um número de protocolo onde houvesse uma questão de segurança justificaria o

uso de uma função do tipo hash.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu tenho uma aplicação, em que cada objeto recebe como nome uma string aleatória criada no momento do cadastro.

 

Nomear objetos usando números não é uma boa idéia, por isso as vezes é preciso criar uma ID randomica e inseri-la no banco.

 

O que é mesma coisa que acontece no Orkut, Twitter e Facebook, onde cada usuario é identificado por string gerada aleatoriamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Concordaria se fosse uma hash ao invés de uma aleatória, a hash daria para validar se o que foi gravado foi gerado pelo Sistema.

 

Vale lembrar que seria o código de um produto, vai lembrar que 888hyTSXQ09ZVXc é Coca-Cola Lt ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.