DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Fórum DevMedia


Autor
Mensagem
Alberto Molina Amaral.
 

País: Brasil
Estado: SP
Cidade: São Paulo
Mensagens: 9
 Postado em: 2/12/2011 1:07:18 PM

Bom dia,

Favor como posso declarar uma variável e a mesma assuma o valor de uma consulta (select).

Estou fazendo da seguinte forma.

V_CAPACIDADE := TO_NUMBER(SELECT MIN (CAPACIDADE_ALUNO) FROM
(SELECT S.CAPACIDADE_SALA - COUNT(T.QUANTIDADE_DE_ALUNOS) AS CAPACIDADE_ALUNO
FROM TURMA T INNER JOIN SALA S
ON T.CODIGO_SALA = S.CODIGO_SALA
GROUP BY S.CAPACIDADE_SALA,T.QUANTIDADE_DE_ALUNOS
)A
WHERE CAPACIDADE_ALUNO > 0);

Dessa forma está correta ou há outra técnica que eu poderia utilizar. Porque eu fiquei com dúvida das aspas simples que eu utilizei e quando é executado sem essas aspas ocorre um erro.
Marco Pinheiro
 
 


País: Brasil
Estado: MG
Cidade: Belo Horizonte
Mensagens: 110
 Postado em: 2/12/2011 5:54:18 PM
A variavel tem que ser declarada assim:

SELECT MIN (CAPACIDADE_ALUNO) into V_CAPACIDADE
FROM (SELECT S.CAPACIDADE_SALA - COUNT(T.QUANTIDADE_DE_ALUNOS) AS CAPACIDADE_ALUNO
FROM TURMA T INNER JOIN SALA S ON T.CODIGO_SALA = S.CODIGO_SALA
GROUP BY S.CAPACIDADE_SALA,T.QUANTIDADE_DE_ALUNOS)A
WHERE CAPACIDADE_ALUNO > 0

Att.,

Marco.

 
Alberto Molina Amaral.
 

País: Brasil
Estado: SP
Cidade: São Paulo
Mensagens: 9
 Postado em: 3/12/2011 11:38:13 AM
Valeu Marco

Estou com outro problema fui executar a trigger e apareceu o seguinte erro:

ERRO na linha 1:
ORA-06502: PL/SQL: erro numérico ou de valor : erro de conversão de número em carácter
ORA-06512: na SCOTT.PROFESSOR_TURMA, linha 5
ORA-04088: erro durante a execução do trigger SCOTT.PROFESSOR_TURMA

Abraços

 
Marco Pinheiro
 
 


País: Brasil
Estado: MG
Cidade: Belo Horizonte
Mensagens: 110
 Postado em: 6/12/2011 2:38:22 PM
Talvez você deva converter de TO_NUMBER para TO_CHAR. Quando você faz concatenações o padrão é string.

Veja se tem algum numerico concatenando com string.

Att.,

Marco.

 
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03