Ajuda com MySQL

6 respostas
landantas

Salve Salve galerinha!!

O problema é o seguinte:
Eu estou com um sistema básico com java e conexão à um servidor MySQL.

Nele estou criando uma função que quando o usuario clicar no botão ele vai fazer aterações em várias tabelas.

Mas para que o sistema não fique muito lento, queria saber se tem algum jeito para que quando seja alterando uma tabela o MySQL faça alterações nas outras automaticamente.

Tipo assim:

Você dá baixa em um produto:

Aii o sistema vai diminuir na quantidade de estoque do produto, dar entrada no caixa, beneficiar o vendedor, etc…

Se tiver algum jeito disto ser feito direto no servidor por favor me avisem.

Fiquem com DEUS

6 Respostas

claudemiro

Faz uma Trigger.

Sempre que você der baixa o banco executa uma função no seu banco de dados que altera as outras tabelas.

http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html
http://www.devmedia.com.br/post-8088-MySQL-TRIGGERS.html
http://www.newtonwagner.net/trabalhando-com-triggers-no-mysql/

landantas

claudemiro!!!

Brigadão ai cara

Me ajudou muito levarei os TRIGGERS para o resto da vida!!

Fica com DEUS:!::!:

d34d_d3v1l

Eu fiz tudo isso via código :wink:

Ex.:
Cria uma ordem de serviço
gera contas a receber de acordo com o plano de pagamento
cria lançamentos no plano de conta (debitando o cliente e creditando uma conta chamada 'contas duvidosas a receber’
quando a conta é paga, debita a conta q acabei de citar, e credita a conta do caixa
:wink:

Tudo via código, acho que o banco fica menos dependente possível sab? x]
abraços

Andre_Rosa

Outra coisa que também deve lhe interessar são threads. Procure a respeito.

landantas

Mas a minha intenção foi já evitar fazer via código para não ficar muito extenso… Entende:?:

Já pesquisei mas acho que não atende as minhas necessidades…:?

Agora estou com outro problema…

Eu quero pegar o valor de outra tabela na TRIGGER será que é possível???
Se sim por favor me iluminem as idéias…

Fiquem com DEUS:!::!:

landantas

Galerinha!!!

Consegui resolver o problema de pegar valor de outra tabela!!!

É só criar uma variável para receber o valor:

@variavel = (SELECT campo FROM tabela WHERE id = 1)

Fiquem com DEUS:!::!:

Criado 28 de outubro de 2011
Ultima resposta 31 de out. de 2011
Respostas 6
Participantes 4