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 :

Problème avec les champs de type table


Sujet :

MS SQL Server

  1. #1
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    420
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 420
    Points : 174
    Points
    174
    Par défaut Problème avec les champs de type table
    Bonjour,
    voila j'ai un problème avec les champs de type table dans les fonctions
    je peux les déclarer exemple declare @matable table(test int),
    je peux les alimenter exemple insert into @matable select monchamp from @matable2,
    mais je n'arrive pas à faire des jointures.
    exemple select test from @matable innerjoin matable2 on @matable.test=@matable2.monchamp

    J'ai une erreur du type 'la variable @matable doit etre déclaré.

    Merci de votre aide.

  2. #2
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    420
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 420
    Points : 174
    Points
    174
    Par défaut
    ah, apparemment les jointures fonctionnent, ca ne vient pas de la.
    désolé pour ce post pour rien !

  3. #3
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    420
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 420
    Points : 174
    Points
    174
    Par défaut
    toujours un problème...
    le mieux c que je vous donne le code

    -- déclaration de la table, insertion dans la table... jusqu'ici tout va bien.

    delete @tmp_table1 from @tmp_table1 inner join @tmp_table2 on @tmp_table1.code=@tmp_table2.code_tmp
    and @tmp_table1.type=@tmp_table2.type_tmp
    where @tmp_table2.test_tmp=@test_id

    et là j'ai l'erreur la variable @tmp_table1 doit être déclarée

  4. #4
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    420
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 420
    Points : 174
    Points
    174
    Par défaut
    c bon j'ai résolu le problème

    ( je me suis parlé tout seule sur ce post looooooooooooo )

  5. #5
    Membre actif
    Inscrit en
    Février 2003
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 182
    Points : 206
    Points
    206
    Par défaut
    la syntaxe est plutôt ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    delete @tmp_table1 
    Where exists (select 1 from  @tmp_table2   
                         where @tmp_table1.code=@tmp_table2.code_tmp 
                          and @tmp_table1.type=@tmp_table2.type_tmp 
                          and @tmp_table2.test_tmp=@test_id
                        )
    tu pourras avoir la même erreur, dans ce cas si les champs des deux tables ne portent le même nom.

    tu peux faire ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    delete @tmp_table1 
    Where exists (select 1 from  @tmp_table2 tmp  
                         where code=tmp.code_tmp 
                          and type=tmp.type_tmp 
                          and tmp.test_tmp=@test_id
                        )



    A+

  6. #6
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    420
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 420
    Points : 174
    Points
    174
    Par défaut
    ok merci,
    ( j'ai remplacé par la requête ci dessous et ca marche )
    delete @tmp_table1 from @tmp_table1 tmp_table1 inner join @tmp_table2 tmp_table2 on tmp_table1.code=tmp_table2.code_tmp
    and tmp_table1.type=tmp_table2.type_tmp
    where tmp_table2.test_tmp=@test_id

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

Discussions similaires

  1. [AC-2003] Problème d'arrondi avec les champs de type réel simple
    Par gege2061 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 15/09/2009, 17h58
  2. [InterBase] Problème avec les champs incrémentables
    Par ProgD dans le forum InterBase
    Réponses: 4
    Dernier message: 08/11/2007, 16h51
  3. [Cognos 6][Impromptu] Problème avec les champs groupés
    Par nicoduhavre dans le forum Cognos
    Réponses: 4
    Dernier message: 23/03/2007, 15h27
  4. [XHTML] Problème avec les champs obligatoires d'un formulaire
    Par elodie13 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 26/09/2006, 14h45
  5. Problème avec les champ obligatoire et liste déroulante
    Par snakejl dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/05/2006, 18h21

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