Ir para conteúdo

POWERED BY:

Arquivado

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

bah

Solicito a opiniao de vocês

Recommended Posts

Olá galera,tudo bom?espero que simvenho para pedir a opinião de vocês sobre uma tabela de um sistema que estou fazendo. vou explicar minha situaçãotodos os cadastros feito no sistema, vão para uma tabela chamada IDs.Fiz essa tabela pois no decorrer do sistema eu vou fazer verificações volumosas que ficariam além de complicadas, pesadas!enfim, na tabela existem 10 campos, id(principal, primario), id_cadastrou (id do usuário que cadastrou), data, id_clnt(no caso, se o cadastro for de algum cliente, neste campo existiria o id desse cliente), id_funcionarios (mesma coisa) e assim por diante com todas as 7 tabelas.uma coisa é fato, nunca irei usar mais de 4 campos para cada registro.enfim minha questão:ficaria mais leve eu fazer algo do tipo:CAMPOS: id, id_cadastrou, data, tipo, id_pai, id_filhoonde "tipo" seria como um número correspondente a tabela, por exemplo, tabela de clientes é numero 1, tabela de funcionarios numero 2, e assim por diante.enfim...no caso da primeira tabela que especifiquei, eu faria uma tabela innoDB com ligações com as outras, caso for o segundo tipo não daria, o que eu teria que fazer diretamente pelo código então.a estrutura da primeira tabela está abaixo:

CREATE TABLE sal_ids ( id int(11) unsigned NOT NULL auto_increment, id_funcc int(11) unsigned default NULL, id_servico int(11) unsigned default NULL, id_funcionarios int(11) unsigned default NULL, id_funcoes int(11) unsigned default NULL, id_clientes int(11) unsigned default NULL, id_prod int(11) unsigned default NULL, id_prod_marc int(11) unsigned default NULL, data_cadastro DATETIME NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (id, id_servico, id_funcionarios, id_funcoes, id_clientes, id_prod, id_prod_marc) FOREIGN KEY (id_servico) REFERENCES sal_servico(sid) ON DELETE CASCADE, FOREIGN KEY (id_funcionarios) REFERENCES sal_funcionarios(fid) ON DELETE CASCADE, FOREIGN KEY (id_funcoes) REFERENCES sal_funcoes(fsid) ON DELETE CASCADE, FOREIGN KEY (id_clientes) REFERENCES sal_clientes(cid) ON DELETE CASCADE, FOREIGN KEY (id_prod) REFERENCES sal_prod(pid) ON DELETE CASCADE, FOREIGN KEY (id_prod_marc) REFERENCES sal_prod_marc(pmid) ON DELETE CASCADE,) TYPE=InnoDB;

qual ficaria mais leve, e mais facil de utilizar?aceito sugestões sobre outro método de faze-lasabraçosagradeço a atencao

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom velho.. só cuidado com o comando "ON DELETE CASCADE"... sei q você deve saber o q ele faz, mas normalmente em uma aplicação não se usa isso.. perigoso demais, belezaacho q a estrutura da tabela, não precisa mudar... acho q seria melhor otimizar.. e uma coisa q é fato... a tabela com chaves estrangeiras, InnoDB ela garante a integridade dos dados... mas para isso tem um custo... ou melhor falando... ela é mais lenta q o formato default... mas não aconselho usar ela mesmo pois integridade é integridade... mas para seu conhecimento, beleza?nenhum campo da sua tab é obrigatório.. pode gerar problemas no futuro.. obrigue o preenchimento dos campos essencias...chaves primárias... para q tantas???? você não tem necessidade para usar uma chave composta, se você usa um auto_increment.. chave composta é usada em tabelas q você tem o conceito de muitos-para-muitos (95% dos casos) e com o auto_increment, você perde este conceito.... coloca como chave, somente o id...verifica os campos int se terão posição de 11 mesmo.. pq isso ocupa espaço de alocaçao de recurso, caso for desnecessário, não use todas estas posições....ferramentas de otimização, você deverá usar frequentemente, caso sua tabela sofra muitas alterações, principalmente qdo ele chegar a grandes quantidade... use-as com inteligencias... (indices, analyze, etc..)... verifique se é possível o agendamento destas "ferramentas" semanalmente com o adm do servidor de base...;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa kra desculpe a demora para respondervalew a ajuda aihvou seguir suas dicasobrigado =]]precisando tamo aih!

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.