Jump to content
Fórum Script Brasil
  • 0

Auxílio URGENTE.


Kravinho

Question

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 to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 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 to comment
Share on other 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...