[sapl-dev] Integridade referencial do Banco de Dados do SAPL

Fabiano Weimar dos Santos xirumacanudo em gmail.com
Quarta Setembro 26 12:40:57 BRT 2012


Oi Angelo,

de maneira semelhante, um cliente do provedor reclamou que todas as
proposições de um parlamentar terem sumido. Apos eu perder uma manha
inteira investigando, percebeu-se que não havia nada de errado: o que
ocorreu foi que alguém (ninguém sabe quem) excluiu um parlamentar e
depois incluiu novamente o mesmo parlamentar com outro id, encobrindo
o próprio erro. Nada tinha sido apagado, mas todas as proposições do
parlamentar com novo id não estavam mais associadas, permanecendo
associadas com um id deletado.

As possibilidades de problemas assim são enormes e, na pratica, os
problemas realmente ocorrem.

-- Fabiano Weimar


Em 26 de setembro de 2012 09:55, Angelo Marcondes de Oliveira Neto
<angelomarcondes em gmail.com> escreveu:
> Senhores,
>
> O que me preocupo é com isso aqui!
> http://200.139.168.114:8080/sapl_site/sapl_skin/generico/materia_pesquisar_proc?incluir=0&existe_ocorrencia=0&lst_tip_materia=&txt_numero=&txt_ano=&txt_npc=&dt_apres=&dt_apres2=&dt_public=&dt_public2=&hdn_txt_autor=&hdn_cod_autor=5&lst_tip_autor=Parlamentar&lst_cod_partido=&txt_relator=&txt_assunto=&rad_tramitando=&lst_localizacao=&lst_status=&btn_materia_pesquisar=Pesquisar
>
> Cadê o autor?
> Ele foi excluído, e ninguém vai se preocupar com isso! Exceto na hora que a
> casa for criticada ou acionada judicialmente por apresentar dados
> incompletos, o que segundo a lei 12527 é problema!
>
> Abraços
>
> UaiGeek - Angelo Marcondes de Oliveira Neto.
> Blog do UaiGeek
> Carneirinho - MG
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> - - - - - -
> P: Por que esta mensagem é tão curta?
> R: http://3frases.efetividade.net
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> - - - - - -
>
>
>
> Em 26 de setembro de 2012 01:53, Luciano De Fazio <lucianodefazio em gmail.com>
> escreveu:
>
>> Não são apenas "alguns", mas muitos "alter table"... Comece a fazer e
>> verá. ;)
>>
>> Segue um exemplo bastante básico da impossibilidade de uso, unica e
>> exclusivamente, de RESTRICT no SAPL.
>>
>> A entidade representada pela tabela "materia_legislativa" possui atributos
>> armazenados em tabelas distintas, tais como anexada, autoria, despacho
>> inicial, numeração, tramitação e relatoria.
>>
>> Ao impedirmos a exclusão de uma matéria, por possuir dados armazenados
>> como atributos, tornaremos o sistema praticamente inutilizável, pois isso
>> obrigaria o usuário a excluir cada um dos atributos antes de excluir a
>> entidade. Essa foi a principal causa do insucesso do SAAP 1.
>>
>> Nesse caso específico, seria viável o uso de CASCADE, pois ao excluir uma
>> matéria, seriam excluídas simultaneamente todas as suas informações
>> acessórias, que já não fariam qualquer sentido sem a presença da entidade.
>>
>> Por outro lado, quando uma matéria já constar da Ordem do Dia de uma
>> Sessão Plenária, tendo sido inclusive registrada votação, por exemplo, aí
>> sim faria sentido o uso de RESTRICT, pois a matéria já fará parte do
>> registro histórico das atividades da Edilidade, não podendo mais ser
>> excluída.
>>
>> Se quiser, posso descrever diversas outras situações, por mim vivenciadas
>> por quase duas décadas, onde a hipotética "política única de integridade"
>> conflita com o andamento do processo legislativo e com a usabilidade da
>> ferramenta informatizada para essa finalidade.
>>
>> Luciano De Fázio
>>
>>
>> Em 25 de setembro de 2012 22:56, Fabiano Weimar dos Santos
>> <xirumacanudo em gmail.com> escreveu:
>>
>>> Luciano,
>>>
>>> obviamente que sei da necessidade de alguns alter table para declarar
>>> as chaves estrangeiras ;)
>>>
>>> Da pra formular um exemplo real onde isso traria problemas?
>>>
>>> Apenas dizer que isso "não atenderia às rotinas do processo
>>> legislativo" é bem vago.
>>>
>>> -- Fabiano Weimar
>>>
>>>
>>> Em 25 de setembro de 2012 20:36, Luciano De Fazio
>>> <lucianodefazio em gmail.com> escreveu:
>>> > Esse é apenas um exemplo da infinidade de relacionamentos na base de
>>> > dados
>>> > do SAPL, e essa restrição (RESTRICT) não pode ser utilizada como
>>> > estratégia
>>> > padrão, pois não atenderia às rotinas do processo legislativo.
>>>
>>>
>>>
>>> --
>>> Interessado em meus Cursos e Palestras? Inscreva-se em:
>>> https://groups.google.com/d/forum/cursos-do-xiru?hl=pt-BR
>>>
>>> Fabiano Weimar dos Santos @xiru
>>> http://blog.xiru.org
>>> http://www.pytown.com
>>> --
>>> Wiki do SAPL:
>>> http://colab.interlegis.gov.br/wiki/ProjetoSapl
>>>
>>> Regras de participação:
>>> http://colab.interlegis.gov.br/wiki/ComoParticiparComunidade
>>>
>>> Para administrar sua conta visite:
>>> http://listas.interlegis.gov.br/mailman/listinfo/sapl-dev
>>
>>
>>
>> --
>> Wiki do SAPL:
>> http://colab.interlegis.gov.br/wiki/ProjetoSapl
>>
>> Regras de participação:
>> http://colab.interlegis.gov.br/wiki/ComoParticiparComunidade
>>
>> Para administrar sua conta visite:
>> http://listas.interlegis.gov.br/mailman/listinfo/sapl-dev
>
>
>
> --
> Wiki do SAPL:
> http://colab.interlegis.gov.br/wiki/ProjetoSapl
>
> Regras de participação:
> http://colab.interlegis.gov.br/wiki/ComoParticiparComunidade
>
> Para administrar sua conta visite:
> http://listas.interlegis.gov.br/mailman/listinfo/sapl-dev



-- 
Interessado em meus Cursos e Palestras? Inscreva-se em:
https://groups.google.com/d/forum/cursos-do-xiru?hl=pt-BR

Fabiano Weimar dos Santos @xiru
http://blog.xiru.org
http://www.pytown.com


Mais detalhes sobre a lista de discussão SAPL-dev