none
ERRO EM WITH RRS feed

  • Pergunta

  • Pessoal,

    boa tarde!!!

    estou com um probleminha bobo mas não consegui resolver.... estou fazendo uma consulta recursiva(de um exemplo que vi na net) mas está dando um esse erro no with Incorrect syntax near the keyword 'WITH'. Não consegui resolver.
    Estou usando o sql server 2005 completo. Dei uma olhada no help as instruções estão iguais.



    WITH Niveis ( IdHierarquia, IdHierarquiaPai, Descricao )
    AS
    (

    -- Membro âncora
    SELECT IdHierarquia, IdHierarquiaPai, Descricao
    FROM   HierProdutos
    WHERE  Descricao = 'Desktop'
     
    UNION ALL
     
    -- Filhos
    SELECT h.IdHierarquia, h.IdHierarquiaPai, h.Descricao
    FROM   HierProdutos h
    INNER JOIN Niveis ON h.IdHierarquiaPai = Niveis.IdHierarquia

    )
    segunda-feira, 19 de novembro de 2007 19:34

Respostas

  •  

    Henry,

     

    Não, só passando para nível 2005 (90).

     

    Mas, é importante primeiro fazer a mudança num ambiente de desenvolvimento primeiro, pq pode aparecer alguns problemas de sintaxe que mudaram. É pouca coisa, mas se feito em produção pode dar muita dor de cabeça.

     

     

    Abraço

    terça-feira, 20 de novembro de 2007 02:44

Todas as Respostas

  •  

    Olá Henry,

     

    Verifique nas propriedades da database se o nível de compatibilidade está como 80... deve estar como 90.

     

    Esta é uma instrução do compativel com SQL 2005.

     

     

    Abraço

    segunda-feira, 19 de novembro de 2007 19:51
  • Alexandre,

    olhei aqui está como Compatibility level = Sql Server 2000(80). Sendo assim teria outra solução não?

    Obrigado pela atenção!!!
    segunda-feira, 19 de novembro de 2007 19:57
  •  

    Henry,

     

    Não, só passando para nível 2005 (90).

     

    Mas, é importante primeiro fazer a mudança num ambiente de desenvolvimento primeiro, pq pode aparecer alguns problemas de sintaxe que mudaram. É pouca coisa, mas se feito em produção pode dar muita dor de cabeça.

     

     

    Abraço

    terça-feira, 20 de novembro de 2007 02:44
  • Alexandre,

    boa tarde, tenho o sql server 2000 e 2005 instalados na minha maquina. Primeiro foi instaldo o 2000 depois o 2005. Quando foi olhar essas propriedades não tem a 90. so do 2000 para baixo.... Será que não tem outra forma de resolver esse problema? Obrigado.
    terça-feira, 20 de novembro de 2007 16:30
  •  

    Henry,

     

    Agora que entendi.

     

    Você deve ter instalado apenas as ferramentas do SQL2005, o engine continua sendo do 2000!

     

    Dá uma olhada nos serviços do windows se tem os serviços do SQL2000 e 2005... não deve ter...

     

     

    Abraço

    terça-feira, 20 de novembro de 2007 16:41
  • Alexandre, acho que é isso mesmo que vc falou. Teria alguma forma de resolver isso? Tem como ser feito no 2000 para facilitar as coisas ou vc recomenta o 2005 mesmo? Aguardo retorno e muito obrigado pela atenção que vc está dando para o meu tema...
    terça-feira, 20 de novembro de 2007 17:09
  •  

    Henry,

     

    É, no 2000 não tem como fazer, já que essa é uma implementação do 2005.

     

    Então, acho interessante verificar a possibilidade de passar pro 2005. Você vai ter muitos ganhos, tanto em facilidade de consulta (como você mesmo está tentando fazer), como em desempenho.

     

     

    E... não precisa agradecer, é um prazer ajudar.

     

     

    Grande abraço

    terça-feira, 20 de novembro de 2007 17:22