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

(Resolvido) Ajuda com Stored Procedures


Ferretto

Pergunta

Pessoal é o seguinte, estou refazendo o sistema da minha empresa, pois estava impossível de trabalhar com ele, mas me deparei com um problema...

a linguagem que utilizo e o VB6 e SQL 2005...

no vb 6 eu posso chamar uma funcao passando os parametro ou não, mas para isso preciso crar uma função desse jeito:

Public Function Exemplo(optional variavel as string = "") as string
      'aqui eu escreveria o meu código
end function
estou precisando fazer isso em uma stored procedure, pois neste novo sistema precisarei passar mais um parametro para me trazer o retorno correto, mas no do sistema antigo, que ainda está sendo utilizado até eu entregar este novo sistema, não pode ter existir esta variável. se caso isso não for possível, então existe alguma maneira de colocar um if ou um case nesta stored procedure para que se ele passar os valores 1 ou 0 executasse uma clausula, se caso for outro falor não executaria esta clausula. Exemplo:
SELECT * FROM Clientes
where 1 = 1
if (@variavel = 1) OR (@variavel = 0)
   and codCliente = @variavel

Alquém tem alguma sugestão para me dar?

Editado por Ferretto
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Bom dia Ferretto,

Este procedimento é bem usual quando se desenvolve sistemas. Sempre irá se deparar com estes processos que necessitam de implementações deste tipo.

Igual ao VB6, o SQL consegue sim implementar valores default na assinatura das procedures. Basta na declaração da variável, você setar o valor default. Desta forma, não precisará alterar a sua asssinaturqa junto ao código do VB.

Caso passe o valor, a procedure a utilizará. Caso não passe, ela assumirá o valor default.

Segue um exemplo logo abaixo:

CREATE PROC TesteProc

 @valor INT, @variavel INT=0

 AS
  SELECT @valor, @variavel

 ------------------------------------------

 EXEC testeProc 10

 EXEC testeProc 10,5

Link para o comentário
Compartilhar em outros sites

  • 0
Bom dia Ferretto,

Este procedimento é bem usual quando se desenvolve sistemas. Sempre irá se deparar com estes processos que necessitam de implementações deste tipo.

Igual ao VB6, o SQL consegue sim implementar valores default na assinatura das procedures. Basta na declaração da variável, você setar o valor default. Desta forma, não precisará alterar a sua asssinaturqa junto ao código do VB.

Caso passe o valor, a procedure a utilizará. Caso não passe, ela assumirá o valor default.

Segue um exemplo logo abaixo:

CREATE PROC TesteProc

 @valor INT, @variavel INT=0

 AS
  SELECT @valor, @variavel

 ------------------------------------------

 EXEC testeProc 10

 EXEC testeProc 10,5

Era exatamente isso que eu estava esperando... Muito obrigado Fulvio me ajudou muito

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,4k
×
×
  • Criar Novo...