IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

[2005] syntaxe avec WITH(CTE), DECLARE, RETURNS


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 113
    Par défaut [2005] syntaxe avec WITH(CTE), DECLARE, RETURNS
    Bonjour, J'ai une requête un peu complexe, et je n'arriver à en corriger la syntaxe ...

    Mon Erreur:
    Syntaxe incorrecte près de 'StructureHierarchy'. S'il doit s'agir d'une expression de table commune, vous devez terminer explicitement l'instruction qui précède par un point-virgule.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    go
     
    ALTER FUNCTION [dbo].[fct_StructureEnfant]
    ()
    RETURNS @t table
    (
          [id] int, 
          [libelle] varchar(100) COLLATE French_CI_AS
    )
    AS
    BEGIN
    	DECLARE @libelle varchar(100)
    	DECLARE @id int	
    	DECLARE move_Line_Item_Cursor CURSOR 
    	FOR
    		SELECT id,indent + structure 
    		from   StructureHierarchy as s
    --------------------------------------------------------------------
    WITH StructureHierarchy (id, idStructure, structure, indent)
    AS
    (
    -- Anchor member definition
        SELECT e.id, e.idStructure, e.structure, '' AS indent
        FROM Structure AS e
        WHERE e.idStructure IS NULL
        UNION ALL
    -- Recursive member definition
        SELECT e.id, e.idStructure, e.structure, indent + ' '
        FROM Structure AS e
        INNER JOIN DirectReports AS d
            ON d.id = e.idStructure
    )
    --------------------------------------------------------------------
     
     
    OPEN move_Line_Item_Cursor
    FETCH NEXT FROM move_Line_Item_Cursor INTO @id, @libelle
    --Fetch next record
    WHILE @@FETCH_STATUS = 0
    	BEGIN
    	INSERT INTO @t(id,libelle) VALUES (@id,@libelle)
    	-- now move the cursor
    	FETCH NEXT FROM move_Line_Item_Cursor INTO @id, @libelle
    	END
    CLOSE move_Line_Item_Cursor --Close cursor
    DEALLOCATE move_Line_Item_Cursor --Deallocate cursor
     
    return
    END

    PLEASE HELP !!!

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 997
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 997
    Billets dans le blog
    6
    Par défaut
    FROM StructureHierarchy AS s;
    C'est ce point virgule là qui manque car sinon, il croit que WITH fait partie de l'ordre SQL précédent.
    Il est de bon ton de terminer toutes vos commandes avec un POINT VIRGULE !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. Prb de syntaxe avec une Variable dans un script SQL 2005
    Par davidso dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/03/2007, 18h14
  2. [Delphi 2005] Problème avec JVCL
    Par jpminiscloux dans le forum EDI
    Réponses: 3
    Dernier message: 11/09/2005, 15h23
  3. [Delphi 2005] : Problème avec MessageDlg.....
    Par babyface dans le forum Langage
    Réponses: 2
    Dernier message: 08/07/2005, 12h07
  4. [Delphi 2005] Débutant avec problème de création de fichier
    Par Patcdc dans le forum Bases de données
    Réponses: 2
    Dernier message: 06/06/2005, 18h41
  5. [langage] Pb de syntaxe avec GOTO
    Par BEAUJAULT dans le forum Langage
    Réponses: 2
    Dernier message: 14/10/2004, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo