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

Langage SQL Discussion :

probleme de syntaxe


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 26
    Points : 32
    Points
    32
    Par défaut probleme de syntaxe
    bonjour ,alors je sais pas si c'est ici que je dois vous faire part de mon probleme mais on ne sait jamais :

    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
    52
    53
    54
    55
    56
    CREATE PROCEDURE requete
     
    (
    @IdDescom INT ,
    @Code INT,
    @Niveau INT,
    @ponderation INT
    )
     
     
    AS
     
    SELECT CodePoste FROM T_HST_POSTE 
     
    IF
    (('CodePoste') IS NOT NULL) 
     
    SELECT DISTINCT CodePoste 
        FROM T_COMPREQUISE_POSTE
        WHERE (CodePoste in (SELECT CodePoste FROM T_COMPACQUISE));
     
     
    CASE WHEN CodePoste not in (SELECT CodePoste FROM T_COMPACQUISE) 
     
    THEN 
            INSERT INTO T_COMPACQUISE
            (IdDescomp, 
            Code,
            Niveau, 
            ponderation)
     
            VALUES 
            (@IdDescom,
            @Code,
            @Niveau,
            @ponderation)
     
    ELSE 
     
    SELECT Niveau
         FROM T_COMPACQUISE
         WHERE (Niveau < ALL
    (SELECT T_COMPREQUISE_POSTE.Niveau
    FROM T_COMPREQUISE_POSTE))
     
    END    
     
    IF ('Niveau') < ALL (SELECT T_COMPREQUISE_POSTE.Niveau
    FROM T_COMPREQUISE_POSTE)
     
    UPDATE T_COMPACQUISE    
    Set Niveau=Niveau
    WHERE Niveau IN (select Niveau FROM T_COMPACQUISE)
     
     
    GO


    on m'annonce un message d'erreur en me disant que j'ai une erreur de syntaxe vers le mot clé case , erreur desyntaxe vers le mot clé when , erreur de syntaxe vers le mot clé then et enfin une erreur de syntaxe vers le mot clé end ;
    mais je vois pas mes erreurs;
    avez vous des suggestion a me faire part la dessus , je recherche des informations sur d'autre forum mais a chaque fois cela m'enbrouille;

    ps : je travail sous sql server enterprise manager 2000 avec windows

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Points : 965
    Points
    965
    Par défaut
    CASE est utilisé en SQL, utilisez IF pour les scripts transact-SQL

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 26
    Points : 32
    Points
    32
    Par défaut
    et bien je vais essayer de faire avec un if alors , mais ce qui m'enbete c'est que le THEN dans le iF n'existe pas en TSQL , y'aurait il pas un autre mot qui pourrait le remplacer c'est pour sa que j'ai laisser tomber la formule SI pour le remplacer par un CASE ...
    merci pour cette information

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Points : 965
    Points
    965
    Par défaut
    Et quel problème ça pourrait bien poser?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    IF expression
    instruction
    [ ELSE
    [ IF expression ]
    instruction]
    Le problème, c'est l'utilisation que vous en faites :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT CodePoste FROM T_HST_POSTE 
     
    IF
    (('CodePoste') IS NOT NULL)
    Ici, vous devez stocker la valeur de CodePoste récupéré par votre SELECT dans une variable, puis tester la variable dans votre IF.
    Ceci dit, j'imagine que cette requête vous renverra plusieurs lignes, on comprendrait bien mieux si vous nous expliquiez clairement ce que vous cherchez à faire.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de syntaxe sql dans VB
    Par njac dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 20/05/2005, 14h41
  2. [VB.NET] Probleme de syntaxe
    Par microthib dans le forum Windows Forms
    Réponses: 4
    Dernier message: 17/03/2005, 13h49
  3. probleme fonction syntaxe
    Par gIch dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/02/2005, 09h52
  4. [Débutante] Problèmes de syntaxe
    Par new_wave dans le forum Prolog
    Réponses: 4
    Dernier message: 02/11/2004, 18h39
  5. Problemes de syntaxe
    Par maahta dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 01/10/2003, 13h40

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