inacreditÁvel

[quote=eagnes]Se tu relamente precisa reiniciar o segundo campo não poderia fazer primeiro um insert com o campo zerado e depois um update do select max, na mesma transação?

Dependendo da configuração do banco e da aplicação até poderia dar duplicate key no primeiro insert, a não ser que o insert de um lock de tabela…

Acho que uma solução parecida já tinha sido mencionada no início da thread…

[/quote]

Sim, mensionei isso e outras pessoas também.
Agradeço pela atenção.

Estamos ainda resolvendo, mas em suma, os analistas estão vendo o impacto ou possibilidade de mudar a chave para que possa continuar em sequencia normal, assim resolveriamos a coisa toda facilmente.

Grato, pelas idéias, posto aqui qualquer coisa.

Olá

O que eu não consegui entender neste tópico foi porque depois de tantos indicarem qual seria a solução mais adequada o Skill insiste tanto no fato do cliente não querer?

Será que ela paga para ter merda? Se agora está claro que foi cometido um erro grave que está comprometendo o desempenho normal do sistema não vejo como manter a coisa errada. Amanhã em uma futura exansão ou uma simples manutenção o problema vai reaparecer e não sei se o louds, fabio,mister_m e outros estarão disponíveis para lhe ensinar o caminho das pedras.

Para tudo, se reune com o cliente e diz que é importante fazer tal modificação. Mesmo que o cliente tenha outras aplicações acessando a mesma base de dados acho que deixar como está é mirar a espingarda para dar um futuro tiro no pé.

[]s
Luca

skill_ufmt, Boa Madrugada …

Estava analisando este post desde o inicio e venho aqui fortalecer o que o LUCA frizou.

Primeiro, O BD Oracle foi projetado para usar Stored Procedures, Triggers e Functions, assim como diversos SGBD, imagina se a oracle iria colocar um recurso deste com tanto poder e funcionalidade dentro de um sistema CRITICO, posso te afirmar que em um sistema que ajudei a desenvolver quando era estágiario, Tinhamos 38 estações de coleta de dados e cada uma fazia uma inserção de 15 a 20 registros a cada 5 segundos em uma base oracle usando Stored Procedures, e o desempenho era exepcional.

Segundo, Quando eu recebo uns projetos assim eu passo uma semana analisando o código, e com certeza ao ver a “ZONA” que estava a versão de produção sugeriria um refactor, ou ate mesmo iniciar o projeto do zero, Caso o cliente neguasse este artificio eu simplismente recusaria o trabalho, e olha que não esta tao facil assim de arrumar emprego hj em dia.

Terceiro, Seje sincero com o cliente, fale pra ele, "XXXX, Do jeito que esta a aplicação/Banco Não é viavel uma manuntenção … ". Na minha ex empresa fui contratado para fazer manutenção em sistemas, era um call center uma loucura que só ::: cliente interno e externo te ligando o dia todo pq apareceu um ok na tela, e te digo eu pulei fora … dentro de algumas estruturas de trabalho voce como profissional esta apenas “perdendo tempo” não digo que o dinheiro que voce esteja ganhando não seja importante, mas pensar no desgaste e cobrança, por que querendo ou não agora um dos responsaveis pelo sistema é voce, e se algo de errado ocorrer com certeza eles vão chiar e se pelo que eu conheço alguns clientes podem ate te processar ( se voce for consultor ).

Concordo que o cliente é meio “cabeça dura” mas voce como analista deveria colocar as “ideias” na cabeça dele, por que com certeza ele não entendo bulhufas de aplicação (tomo isso como verdade por ele ter falado que Stored Procedures deixam o banco lento). Então chego a conclusão que o errado não é o cliente, mas sim os profissionais que estão em volta (analistas, desenvolvedores, DBA’s) que se sujeitaram a fazer um serviço porco e que no ultimo dia foi dar erro.

Tem varios pontos que nem toquei mas gostaria de deixar minhas palavras.
Seja mais critico da proxima vez.

Boa sorte…

Pessoal é o sguinte,

Não estou condizente com a coisa da forma de que está, desde o começo da versão 2, não só por este problema mas por muuuuitos outros que daria uns 30 posts se fosse colocar aqui.

A questão com o cliente é simples e complexa :smiley:
Eles tem muitas aplicações rodando ao mesmo tempo, muito fluxo mesmo, e eles decidiram que não é permitido usar trigger, procedure, o porque eu não sei, só sei que o cliente manda, certo? e não adianta tentar argumentar, ele num quer e pronto acabo, vo matar ele? se bem que seria bom matar alguns políticos :smiley:
O cliente é Governo, tudo lá ´uma merda e uma burocracia para ser feito.
Não permitem frameworks e blás blás, só servlet, jsp e alguns padões que eles definiram a uns trocentos anos atrás e relutam em não mudá-los, mas uma vez, fazer o que?

Mas enfim, certamente contente eu não estou, mas pelo menos até o próximo mês é o que me há :slight_smile:

Agora está explicado.

Bem, tratando de governo, eu já estive do outro lado, e sei que geralmente a pessoa que faz essa “exigência” só faz isso pq “ouviu dizer” que não pode ter. Ai ele bate firme nessa exigencia.

Mas é só olhar o edital de licitação e ver se está EXPPLICITAMENTE PROIBIDO o uso de triggers e SP no desenvolvimento, e ainda assim eu te digo que de todas as implementações que eu vi no Governo, 100% (isso mesmo TODAS) foram feitas de um jeito diferente do solicitado, por conta da empresa, que assim que falou pro chefe (o cara que manda, mesmo sem não entender nada, até sem ter o nível médio, as vezes nem o fundamental) que fizeram daquele jeito pq era o único, senão ia dar pau, que não iriam entregar um sistema errado só pq pediram errado, etc, ai o cara releva esse “pequeno desvio” entre especificação e implementação.

E olha que também nunca vi Governo aplicando multa pra contrato atrasado ou entregue de forma diferente da solicitada…

Mas quem sabe vc achou a parte do governo que funciona de verdade, com chefes, digo, gerentes e líderes, que entendem do assunto…