Procedure para buscar registros de uma aplicação

4 respostas
meyer

Pessoal,

Estou criando uma aplicação e preciso utilizar uma procedure para buscar registros. A procedure está funcionando, porém criei de alguma forma errada , pois o certo seria informar apenas dois parametros e a procedure trazer o registro, o problema é que tenho que informar todos os parametros, caso o contrário ele não busca o registro. Alguém poderia me ajudar?

create procedure spListarMensagem(
@ID_MENSAGEM INT ,
@DESC_MENSAGEM AS VARCHAR(MAX),
@ID_PERFIL_ENVIO INT,
@ID_PERFIL_RECEPTOR INT,
@DATA_CRIACAO AS DATETIME,
@STATUS AS BIT,
@TOPICO_MENSAGEM AS VARCHAR(MAX)
)

AS

SELECT ID_Mensagem, Desc_Mensagem, ID_Perfil_Envio, ID_Perfil_Receptor, Data_criacao, Status, Topico_Mensagem
FROM dbo.tblMensagem
where ID_Mensagem = @ID_MENSAGEM
AND ID_Perfil_Envio = @ID_PERFIL_ENVIO
AND ID_Perfil_Receptor = @ID_PERFIL_RECEPTOR

ORDER BY ID_Perfil_Envio,Data_criacao

Estou tentando passar apenas os parametros @ID_MENSAGEM, @ID_PERFIL_ENVIO, @ID_PERFIL_RECEPTOR , porém ele não aceita, tenho que colocar todos os parametros , caso contrário não traz o registro.

4 Respostas

rxca

meyer,

não tem como apagar a procedure e fazê-la de novo?

DELETE PROCEDURE spListarMensagem;

CREATE PROCEDURE spListarMensagem (
    @ID_MENSAGEM INT,
    @ID_PERFIL_ENVIO INT,
    @ID_PERFIL_RECEPTOR INT
)

AS

SELECT ID_Mensagem, Desc_Mensagem, ID_Perfil_Envio, ID_Perfil_Receptor, Data_criacao, Status, Topico_Mensagem
FROM dbo.tblMensagem
WHERE ID_Mensagem = @ID_MENSAGEM
    AND ID_Perfil_Envio = @ID_PERFIL_ENVIO
    AND ID_Perfil_Receptor = @ID_PERFIL_RECEPTOR
ORDER BY ID_Perfil_Envio, Data_Criacao;
meyer

Valeu mano…

Deletei e recriei novamente …funcionou de primeira…

VALEW mesmo!!!

rxca

Não tem de quê! Estamos aqui pra ajudar ;D

ViniGodoy

Tópico movido para o fórum de persistência.

Criado 3 de novembro de 2011
Ultima resposta 3 de nov. de 2011
Respostas 4
Participantes 3