Autor Tópico: Formulário: Permissão condicionada para atualização da chave primária.  (Lida 1536 vezes)

FredKeyster

  • Expert
  • *****
  • Mensagens: 1702
  • DEWENNINMEN
    • Email
Re:Formulário: Permissão condicionada para atualização da chave primária.
« Responder #15 Online: Agosto 27, 2014, 10:36:48 am »
Citar
Chaves primárias compostas servem para soluções mais complexas por isso são menos utilizadas, como pode ser observado nos comentários deste tópico.

Isso me lembra as rotinas que eu estava estudando com Python! A chave primária é um MD5. O banco não é relacional como tradicionalmente vemos. Pensei que essa estrutura (Novo paradigma) era apenas feito em Python com framework Django.

No mais, com toda humildade e sinceridade não consegui entender o conceito do seu caso! Mas desejo que consiga resolver de acordo com seus preceitos.

Grande abraço.
F. A.
Analista de Sistemas

Jailton

  • Expert
  • *****
  • Mensagens: 2041
Re:Formulário: Permissão condicionada para atualização da chave primária.
« Responder #16 Online: Agosto 27, 2014, 11:59:46 am »
Indice com 7 chaves compostas.... sei...





Os Sistemas Gerenciadores de Banco de Dados - SGBD - possuem estruturas que propiciam a localização e o acesso mais rápido a dados específicos dentro de uma tabela e, adicionalmente, contribuem nas consultas envolvendo ordenações, agrupamentos e junções. Essas estruturas são notoriamente conhecidas por índices.


Em contrapartida aos benefícios proporcionados nas buscas de dados, essas estruturas consomem espaço de armazenamento e geram impactos negativos em termos de desempenho e concorrência nas operações de atualização - update, delete e insert - das tabelas a qual estão associados.

Assim, os índices não podem ser criados aleatoriamente, sendo suas características e quantidade dependentes das expectativas dos usuários, do espaço de armazenamento disponível, do overhead da manutenção e administração e, principalmente, da finalidade do banco de dados; apoio a processos operacionais ou a processos de Business Intelligence. Tais pontos são considerados pela estratégia de indexação.

Índice de Árvore Binária

O índice B-Tree possui uma estrutura hierárquica que armazena ponteiros para as linhas de uma tabela – ver figura 2 –, sendo indicado para colunas chaves – coluna que faz parte de um índice – cujos valores apresentem muita distinção como, por exemplo, aqueles encontrados em uma coluna que será chave primária. Por outro lado, seu uso proporciona desempenho reduzido – se houver – para colunas com pouca diferença de valores como, por exemplo, nos casos de Unidade de Federação ou Sexo.


Figura 2 – Estrutura do índice B-Tree (Adaptado da Oracle)


Leia mais em: Estabelecendo uma estratégia para o uso efetivo de índices http://www.devmedia.com.br/estabelecendo-uma-estrategia-para-o-uso-efetivo-de-indices/8068#ixzz3BbY4yUR3

O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

jairo

  • Novato
  • *
  • Mensagens: 14
Re:Formulário: Permissão condicionada para atualização da chave primária.
« Responder #17 Online: Agosto 27, 2014, 01:11:07 pm »
Olá gente!

Mais facilidades durante o desenvolvimento, maior segurança no sistema e maior complexidade na estrutura de dados sempre irão exigir mais processamento e memória.

Por sorte, hoje em dia, podemos contar com muitas tecnologias avançadas de rede, armazenamento e processamento, que nos ajudam, e muito, nestas questões.

Por isso, ultimamente, não estou restringindo todo o meu trabalho por conta das características de certas técnicas. Mas levo estas características em consideração nos casos onde realmente há a necessidade do aumento de performance e não há recursos para o aumento do poder de processamento.

Não é minha intenção derrubar conceito algum, e sim mostrar que podemos nos deparar com muitas situações diferentes, e não precisamos lidar com todas essas situações sempre da mesma forma, afinal de contas é por isso que os SGBDs são bastante flexíveis, e assim eles conseguem atender uma grande variedade de casos. Cada um trabalha como mais lhe parece adequado a situação.

E o Scriptcase pode sim, ser bastante flexível também. Por quê não?

Jairo Raiol
« Última modificação: Agosto 30, 2014, 07:35:38 pm por jairo »

jairo

  • Novato
  • *
  • Mensagens: 14
Re:Formulário: Permissão condicionada para atualização da chave primária.
« Responder #18 Online: Agosto 31, 2014, 11:57:48 am »
Olá gente!
Só para acrescentar.

Como já foi dito, para alguns relacionamentos adotei o seguinte:
Chaves primárias e estrangeiras compostas a partir de campos tipo texto contento dados como descrições ou nomes.

E dentre outras coisas, observei que:
1- A respeito do incremento no tempo de processamento com chaves primárias compostas durante as inserções, não obtive impacto humanamente perceptível mesmo em equipamentos modestos, e foi por esse motivo que na época da primeira implementação não encarei esta característica como impeditiva, e continuo não encarando.

2- Durante a formação dos relatórios de grandes volumes de dados com o uso de ordenações, quebras e resumos, percebi benefícios, pois o sistema utiliza os índices provenientes das chaves estrangeiras compostas. Isto ocorre porque o conteúdo dos campos que compõe estes índices são os mesmos dados exibidos nas consultas, e não códigos numéricos. Foi a respeito desta performance que me referi na abertura deste tópico.

3- Todos os conceitos são válidos, porém, tão importante quanto conhecer os conceitos é saber onde e quando aplicá-los.


Por enquanto é isso pessoal.

O Scriptcase melhorou muito nos últimos anos e espero vê-lo cada vez melhor.
Aproveito para agradecer a Bernhard Bernsmann e toda a equipe da NetMake pela atenção.

Jairo Raiol


OBS.: Algumas vezes já me senti engessado com o uso do Scriptcase, mas sempre consegui uma forma de contornar certas limitações, como foi com o fato das aplicações do Scriptcase não serem recursivas, o que me levou a aplicar o conceito da recursividade indireta, que funcionou muito bem. Mas desta vez nada posso fazer, dependo inteiramente da NetMake.
« Última modificação: Setembro 08, 2014, 02:22:01 pm por jairo »

jairo

  • Novato
  • *
  • Mensagens: 14
Re:Formulário: Permissão condicionada para atualização da chave primária.
« Responder #19 Online: Outubro 02, 2014, 12:24:44 am »
Olá gente!

Testando a atualização da chave primária nas versões 7 e 8 do ScriptCase, obtive a seguinte mensagem:

ERRO   
Erro ao alterar a base de dados - Registro inexistente

Acredito que isso acontece devido ao fato de os valores alterados dos campos da chave serem utilizados na cláusula WHERE, e não os valores originais dos campos da chave.
Então, me parece que a questão aqui é apenas de correção no comando UPDATE.

Ficarei imensamente grato com este ajuste.

Jairo Raiol
« Última modificação: Outubro 02, 2014, 12:34:26 am por jairo »