USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Posso usar clausula case em store procedure?
Cardoso G
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
Postada em 06/07/2006 11:21 hs            
CASE
           WHEN @IDQuery = 0 THEN
              BEGIN
                 select * from tbl_empresas
              END
END
     
Cardoso G
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
Postada em 06/07/2006 11:24 hs            
esse exemplo é da propria microsoft , veja ai.
 

while @@fetch_status != -1 

begin

  select @msg = '***** Tabela: ' + @nomeTabela

  print @msg

  select sc.colid Num, sc.name Coluna,

  convert(varchar(20),

   case

     when st.name in ("char", "varchar", "binary")

          then st.name + "(" + convert(varchar,sc.length)+")"

     when st.name in ("numeric", "decimal")

          then st.name + "(" + convert(varchar,sc.prec) + "," +

                              convert(varchar,sc.scale) + ")"

     else st.name

   end) Tipo,

   case when sc.status & 0x08 = 0 then "NOT NULL " else "NULL " end +

   case when sc.status & 0x80 != 0 then "IDENTITY" else null end

    Opções,

   sc.length 'Tam.bytes', sc.cdefault, sc.domain

   from syscolumns sc LEFT JOIN systypes st

   ON sc.usertype = st.usertype

  where sc.id = @id

 

  fetch next from SOBJ into @id, @nomeTabela

end

close SOBJ

deallocate SOBJ // destroi o cursor do banco de dados

GO

     
Everest
não registrado
Postada em 06/07/2006 11:30 hs   
tua procedure é no sql server?
     
Everest
não registrado
Postada em 06/07/2006 12:11 hs   
Cara vc viajou, nao é um case dentro de um select quero criar uma condição case como se fosse um tratamento dentro do codigo me vb:

------- ou seja, quero trocar isto:
GO
CREATE procedure dbo.sp_geral
 @IDQuery int
as
if @IDQuery = 1
   begin
 select * from tbl_empresas order by vch_razaosocial
   end
else
   if @IDQuery = 2
      begin 
           select * from tbl_empresas order by vch_razaosocial
      end

------- por isto:

GO
CREATE procedure dbo.sp_geral
 @IDQuery int
as
case
when @IDQuery = 1 then
   begin
 select * from tbl_empresas order by vch_razaosocial
   end
when @IDQuery = 2 then
      begin 
           select * from tbl_empresas order by vch_razaosocial
      end
 
tente criar esta procedure para ver se funciona, aqui da erro..
T+
 
 
     
Cardoso G
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
ENUNCIADA !
Postada em 07/07/2006 08:18 hs            
a sim, entendi, nao tenho certeza, mas no sql-server acho que nao tem o case fora do select
   
Página(s): 2/2     « ANTERIOR  


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página