Ir para conteúdo
Fórum Script Brasil
  • 0

Auxílio URGENTE.


Kravinho

Pergunta

PessoALL,

Sou novo com o MySQL e estou encontrando muita dificuldade para construir uma proc relativamente simples, ainda não entendi como funciona atribuição de valores a variáveis no MySQL (versão 5.5 da comunidade).

Tenho algumas tabelas, dentre elas uma chamada cliente, que dentre outras informações, armazena o SALDO de cada cliente, tenho outra tabela chamada EXTRATO que tem toda a movimentação de cada cliente.

Preciso criar uma procedura que será chamada diariamente para validar estas informações. Esta proc deve comparar o CLIENTE.SALDO com o EXTRATO.SALDO para validar os valores, ambos devem ser o mesmo, pois existem débitos e créditos efetuados diariamente.

Tentei fazer isso armazenando as informações de cada saldo numa variável e comparando as duas, mas isso não está funcionando bem.

Alguém sabe uma maneira melhor de fazer isso, ou pode postar um exemplo para que eu me oriente por ele?

Desde já agradeço o pronto atendimento e atenção de TODOS.

Um grande abraço!! :ninja:

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
PessoALL,

Sou novo com o MySQL e estou encontrando muita dificuldade para construir uma proc relativamente simples, ainda não entendi como funciona atribuição de valores a variáveis no MySQL (versão 5.5 da comunidade).

Para atribuir valores a uma variavel dentro de uma procedure faça assim:

SET variavel = valor;
Tenho algumas tabelas, dentre elas uma chamada cliente, que dentre outras informações, armazena o SALDO de cada cliente, tenho outra tabela chamada EXTRATO que tem toda a movimentação de cada cliente. Preciso criar uma procedura que será chamada diariamente para validar estas informações. Esta proc deve comparar o CLIENTE.SALDO com o EXTRATO.SALDO para validar os valores, ambos devem ser o mesmo, pois existem débitos e créditos efetuados diariamente. Tentei fazer isso armazenando as informações de cada saldo numa variável e comparando as duas, mas isso não está funcionando bem. Alguém sabe uma maneira melhor de fazer isso, ou pode postar um exemplo para que eu me oriente por ele?...
Se entendi direito suas tabelas então um simples select resolve seu problema.
SELECT identificadordocliente, c.saldo, e.saldo, IF(c.saldo = e.saldo,'IGUAL','DIFERENTE') AS Resultado
FROM cliente c
INNER JOIN extrato e ON c.identificadordocliente = e.identificadordocliente

Como você não especificou o identificador das tabelas cliente e extrato assumi um atributo "identificadordocliente" que liga as duas tabelas.

Mais informações só vendo a estrutura das tabelas.

Link para o comentário
Compartilhar em outros sites

  • 0

Bom Dia, preciso d um auxilio, avalie a possibilidade de me ajudar...

Possuo um DGrid onde exibo as consultas sql de um CAIXA, DataSet (ZQuery), onde constam as colunas COD, DESCRIÇÂO, R$ LANÇ, R$ TOTAL, TIPO (Despesa ou RECEITA), quero visualizar como extrato bancario, quando eu gero uma consulta geral com todos os lançamentos, tudo OK, o problema é quando eu filtro por um periodo (data) ou tipo (despesa ou receita), pois não estou conseguindo atualiza-la a cada lançamento, alguma sugestão?...segue acima o modelo de visualização do DBGRID...

CREATE TABLE `caixa` (

`CX_cd` int(10) NOT NULL auto_increment,

`CX_dtAtual` date NOT NULL,

`CX_desc` varchar(50) NOT NULL,

`CX_valLan` float(8,2) NOT NULL,

`CX_saldo` float(8,2) NOT NULL,

`CX_tipo` varchar(10) NOT NULL,

`CX_obs` text,

`COR_cd` int(10) default NULL,

`USU_cd` int(10) default NULL,

`MOT_cd` int(10) default NULL,

PRIMARY KEY (`CX_cd`),

UNIQUE KEY `CX_cd` (`CX_cd`),

KEY `COR_cd` (`COR_cd`),

KEY `USU_cd` (`USU_cd`),

KEY `MOT_cd` (`MOT_cd`),

CONSTRAINT `caixa_fk` FOREIGN KEY (`COR_cd`) REFERENCES `corridas` (`COR_cd`) ON DELETE NO ACTION ON UPDATE CASCADE,

CONSTRAINT `caixa_fk1` FOREIGN KEY (`USU_cd`) REFERENCES `usuarios` (`USU_cd`) ON DELETE NO ACTION ON UPDATE CASCADE,

CONSTRAINT `caixa_fk2` FOREIGN KEY (`MOT_cd`) REFERENCES `motocicletas` (`MOT_cd`) ON DELETE NO ACTION ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=latin1 AVG_ROW_LENGTH=16384 COMMENT='InnoDB free: 3072 kB; (`COR_cd`) REFER `me/corridas`(`COR_cd';

Exemplo1: Correto assim...

Cód Data Lanç. Descrição R$ Valor R$ Saldo Tipo

8 12/11/2011 DESPESA R$ 10,00 R$ 42,00 DESPESA

9 12/11/2011 DESPESA1 R$ 2,00 R$ 40,00 DESPESA

10 12/11/2011 RECEITA R$ 10,00 R$ 50,00 RECEITA

11 12/11/2011 RECEITA1 R$ 5,00 R$ 55,00 RECEITA

12 12/11/2011 DESPESA2 R$ 5,00 R$ 50,00 DESPESA

13 12/11/2011 RECEITA2 R$ 15,00 R$ 65,00 RECEITA

Exemplo 2: ERRADO assim...

Cód Data Lanç. Descrição R$ Valor R$ Saldo Tipo

8 12/11/2011 DESPESA R$ 10,00 R$ 42,00 DESPESA

9 12/11/2011 DESPESA1 R$ 2,00 R$ 40,00 DESPESA

12 12/11/2011 DESPESA2 R$ 5,00 R$ 50,00 DESPESA

Exemplo 2: Correto seria assim...

Cód Data Lanç. Descrição R$ Valor R$ Saldo Tipo

8 12/11/2011 DESPESA R$ 10,00 R$ 42,00 DESPESA

9 12/11/2011 DESPESA1 R$ 2,00 R$ 40,00 DESPESA

12 12/11/2011 DESPESA2 R$ 5,00 R$ 35,00 DESPESA

_________________

Gilson de Souza Carvalho

Celular: (62) 9669 2000

E-mail/MSN: gaucho.gilson@hotmail.com

Skype: gaucho.gilson

https://byfiles.storage.live.com/y1p3yroDqa...ERTO.png?psid=1

https://byfiles.storage.live.com/y1pxXIxOKJ...RADO.png?psid=1

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...