CHAVE PRIMARIA OCULTA?

LCSD 15/09/2006 19:24:21
#171791
Aproveitando a deixa desse tópico......

Matioli....

A algum tempo atraz....vi algo assim.....

0013200060599 onde com a mascara ficava assim :

001.320.006.05-99 - essa sequencia identificava uma consultora de belza...(AVOM/NATURA/PAYOT) ONDE :

001 = SUPERVISOR
320 = CIDADE
006 = BAIRRO
05 = SETOR ' TAMBEM CONHECIDO COMO RUA
99 = CONSULTORA.

talvez sirva como critério ae para a codificação do seu projeto....


ta ai minha sugestão....

USUARIO.EXCLUIDOS 15/09/2006 20:12:12
#171792
Código aleatório nao funciona, pelos motivos que o MATIOLI citou, acredito que usar uma chave SHA ou MD5, a partir do nome do cliente somado a data de cadastro, ou ao CNPJ, ou CPF, ou outro parà¢metro pode é bem melhor, aconselho utilizar chave com 8 ou 10 dígitos, o que evita a duplicação mesmo.
Quanto a velocidade de acesso e busca, não acho que comprometa se o campo for texto e limitado a um tamanho pequeno.
Bom tenho uma bas e de dados com aproximadamente 2500 cadastros (sei que é pequeno) e nele consigo localizar rapidamente o código (menos de 1 seg.), com chave de ID com 25 dígitos. Assim a velocidade vai estar ligada mais a configuração da máquina, da velocidade da rede, númeor de usuário conectados a base de dados, do que com o tamanho do campo.
USUARIO.EXCLUIDOS 15/09/2006 20:27:00
#171795
Olha um exemplo de ID de uma das tabelas:

A3A36E9(.S3_#S*
9ZWOGL1&!72{?T:
9ZWPAI3()%1D?T:
9ZX72W5$@KL#?T:
A2U345N*V$2:.A5
9YULEUX%-83^),-
BBXJYX2)A2K']GJ
USUARIO.EXCLUIDOS 16/09/2006 08:20:59
#171819
MARCOS sei não, mas isso tá com cara de estar criptografado, provavelmente ele forma o ID como o FOXMAN e o WCOSTA disse e criptografa isso tb...

Mas colega, dependendo do sistema, vc não precisa se preocupar com isso, na maioria acredito que uma autonumeração comum seja a melhor escolha, claro que há excessões como o de LOCADORA que eu falei e este citado pelo FOXMAN...flw
LCSD 16/09/2006 08:50:10
#171820
Grego

Sim, uma chave primária com inteiro é muito mais eficiente que uma String, pelo simples fato de que um relacionamento extenso, 10 tabelas por exemplo, pode tornar alguns processos extremamente lentos.

Um exemplo, um Sistema que utilizava massivamente Strings foi migrado para 80% de números inteiros ou longos, e uma rotina de extração de dados obteve uma redução de 1 hora para 30 segundos.

A Modelagem neste caso também auxiliou mas os índices com certeza também, chaves tipo Integer são 40 vezes mais rápidas em indíces que Strings, se eu não me engano.

Até Breve


USUARIO.EXCLUIDOS 16/09/2006 08:53:00
#171821
Não faz muito sentido criptografar o ID... não é mesmo?

Alem do mais, o sistema nem é meu.

LCSD 16/09/2006 08:58:17
#171822
WCosta

Localizar eu acredito que não seja o problema, ele irá localizar em milisegundos, o problema está na extração de dados, na hora de tomada de decisão, com Chaves Strings o processo se torna lento em escala, quanto mais chaves strings em relacionamentos mais demorada a resposta do Engine da Base e se a quantidade de tabelas for extensão e a quantidade de dados, geralmente um período de tempo, for de uma amplitude relativamente grande, pode-se ir tomar uma cafezinho, almoçar, etc....

Isto eu já presenciei na prática, com modelagem herdada e outra atualizada.

Até Breve


USUARIO.EXCLUIDOS 16/09/2006 09:18:57
#171823
Citação:

MARCOS LING escreveu:
Não faz muito sentido criptografar o ID... não é mesmo?

Alem do mais, o sistema nem é meu.



Realmente não faz, mas é que achei estes números aí fora do nível considerado de estranhesa (), realmente parece dados criptografados, tem certeza q isso são os IDs?
USUARIO.EXCLUIDOS 16/09/2006 09:24:13
#171824
Certeza absoluta!
PROGRAMADORVB6 16/09/2006 10:12:09
#171827
Caro colega então veja o seguinte , se está maravilhado com os softwares que andam por ai entao dê uma olhada em : http://www.vbmania.com.br/vbmania/vbmdetail.php?varID=3753
Página 2 de 3 [21 registro(s)]
Tópico encerrado , respostas não são mais permitidas