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

Bases de données Delphi Discussion :

Insertion dans une query


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut Insertion dans une query
    Bon soir

    J'ai une query de 2 tables paradox et un dbgrid qui affiche les resultats de la requette
    la table1 est une table des annee
    la table2 est une des articles
    la requette affiche les resultats de table article dans une annees designees
    et maintenant je veux ajouter des autres articles dans la table article

    Comment faire
    Merci

  2. #2
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    Bonsoir,

    Vous voulez dire inserer des articles par année ?
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  3. #3
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    Bonsoir,

    Vous voulez dire inserer des articles par année ?
    Non;la requette est filtré elle donne les articles suivant l'annee voulu

    J'explique: j'ai un projet gestion des stocks
    A chaque fin d'annee nous devons cloturer l'annee et demarrer une nouvelle annee dont les valeurs initiales de l'annee( 200x+1) sont les valeurs finale de l'annee (200x)

  4. #4
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    oui mais si il s'agit tout simplement d'inserer un article par query alors
    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
     
     
    Var
    Qry:TQuery;
    Begin
     
    Qry:= TQuery.Create(nil);
    Qry.SessionName:='Default'; //ou si tu as un composant session Session1.SessionName;
    Qry.DatabaseName:='alias',
    Qry.SQL.Clear;
     
    Qry.SQL.Add('Insert Into ARTICLE (CodeArticle,Designation,Pu,Annee) VALUES (:Code_article,:Libelle,:Prix,:Annee)');
     
    Qry.ParamByName('Code_article').AsInteger:=Code_article;
    Qry.ParamByName('Libelle').AsString:=Libelle;
    Qry.ParamByName('Prix').AsCurrency:=Prix;
    Qry.ParamByName('Annee').AsInteger:=Annee;
    Qry.ExecSQL;
    Qry.Free;
    End;
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  5. #5
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    Code_article,Libelle,Prix,Annee sont des variables qui recoivent les valeurs des edits lors de la saisie et pour Annee ont peut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Annee:=YearOf(Date);
    Pour la fonction YearOf on inclus l'unité DateUtils
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  6. #6
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    Code_article,Libelle,Prix,Annee sont des variables qui recoivent les valeurs des edits lors de la saisie et pour Annee ont peut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Annee:=YearOf(Date);
    Pour la fonction YearOf on inclus l'unité DateUtils
    C'est bon
    Mais lors de l'affichage; il parrait que que query n'etait pas active;c'est a dire que le dbgrid de query est vide

  7. #7
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    alors juste aprés la requête d'insertion tu refais ta requête qui filtre, tu ferme la requête et la réouvre
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  8. #8
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    alors juste aprés la requête d'insertion tu refais ta requête qui filtre, tu ferme la requête et la réouvre
    J'ai pas compris tu ferme la requête et la réouvre

  9. #9
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    La query que tu filtre et qui est lier au dbgrid aprés l'insertion elle doit-être fermer puis réouverte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Qry.close;
    Qry.open;
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  10. #10
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    tu as bien une query qui filtre et qui est lier au dbgrid ?
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  11. #11
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Bon soir

    ma requette plante dans la ligne

    Qry.ExecSQL

  12. #12
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    Bonsoir,

    Tu peux poster ton code ?
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  13. #13
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    Bonsoir,

    Tu peux poster ton code ?
    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
     
    procedure TForm4.Button1Click(Sender: TObject);
    begin
     
    Form2.Query1.SQL.Clear;
    Form2.Query1.SQL.Add('insert into Article (Article,Code_article) values(:edit1.text,:edit2.text)');
    Form2.Query1.ParamByName('Edit1.Text').AsString :='Article';
    Form2.Query1.ParamByName('Edit2.Text').AsString := 'Code_article';
    Form2.Query1.ExecSQL;
    Form2.Query1.free;
    Form2.Query1.Filter:='Annee='+form1.dblookupcombobox1.text +'' ;
    Form2.Query1.Filtered:=true;
    Form2.Query1.open;
    Form2.Query1.close;
    close;
    end;
    Explication

    -query se trouve dans form2
    -dblookupcombobox1 se trouve dans form1
    -dans form2 il existe un bouton a pour caption :ajouter
    -on click de bouton ajouter :form4.show
    -un bouton dans form4 a pour caption :valider
    -on click de bouton valider:le code qu'on descute

  14. #14
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    Si j'ai cbien compris Query1 c'est composant dans lequel tu fait un SELECT puis tu filtre .....??? alors ton insertion tu la fait dans un autre composant puisque tu ne le fais pas dynamiquement.. et pas besoin de mettre le free


    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
     
    procedure TForm4.Button1Click(Sender: TObject);
    Var
    Param1,Param2,annee :String;
    Begin
    annee:=form1.dblookupcombobox1.text ;
    Param1:=Edit1.Text;
    Param2:=Edit2.Text;
     
    Form2.Query2.SQL.Clear;
    Form2.Query2.SQL.Add('insert into Article (Article,Code_article) values(:Param1,:Param2)');
    Form2.Query2.ParamByName('Param1').AsString :=Edit1.Text;
    Form2.Query2.ParamByName('Param2').AsString := Edit2.Text;
    Form2.Query2.ExecSQL;
     
    Form2.Query1.close;
    Form2.Query1.open;   
    Form2.Query1.filtered:=true;  
    Form2.Query1.Filter:='annee='+quotedstr(annee);
    close; //pourquoi le close ?
    end;
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  15. #15
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    Si j'ai cbien compris Query1 c'est composant dans lequel tu fait un SELECT puis tu filtre .....??? alors ton insertion tu la fait dans un autre composant puisque tu ne le fais pas dynamiquement.. et pas besoin de mettre le free


    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
     
    procedure TForm4.Button1Click(Sender: TObject);
    Var
    Param1,Param2,annee :String;
    Begin
    annee:=form1.dblookupcombobox1.text ;
    Param1:=Edit1.Text;
    Param2:=Edit2.Text;
     
    Form2.Query2.SQL.Clear;
    Form2.Query2.SQL.Add('insert into Article (Article,Code_article) values(:Param1,:Param2)');
    Form2.Query2.ParamByName('Param1').AsString :=Edit1.Text;
    Form2.Query2.ParamByName('Param2').AsString := Edit2.Text;
    Form2.Query2.ExecSQL;
     
    Form2.Query1.close;
    Form2.Query1.open;   
    Form2.Query1.filtered:=true;  
    Form2.Query1.Filter:='annee='+quotedstr(annee);
    close; //pourquoi le close ?
    end;
    1-Exactement ce que j'ai fait mais j'ai pas compris l'insertion dynamique
    2-close pour fermer la form4 et revenir a la form2 qui contient query
    3-ça plante dans Form2.Query1.close;

  16. #16
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    mais j'ai pas compris l'insertion dynamique
    désolé ce n'est pas ce que je voulais dire, je me suis trompé.

    Si ca plante dans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    3-ça plante dans Form2.Query1.close;
    C'est que probablement elle n'existes pas la query1 dans form2 ?
    Quand ca plante qu'es-ce que ca donne comme message ?
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  17. #17
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    désolé ce n'est pas ce que je voulais dire, je me suis trompé.

    Si ca plante dans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    3-ça plante dans Form2.Query1.close;
    C'est que probablement elle n'existes pas la query1 dans form2 ?
    Quand ca plante qu'es-ce que ca donne comme message ?
    ça plante lorsque l'utilisateur appuie sur valider de form4 et donne un message violation de cle lorsuqu'on evite form2.query1.free

    Et lorsqu'on fait le code form2.query1.free donne le message violation d'accés a l'adresse 00466B76 dans le module 'projet1.exe'.lecture de l'adresse 00000000

  18. #18
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    ça plante lorsque l'utilisateur appuie sur valider de form4 et donne un message violation de cle lorsuqu'on evite form2.query1.free
    je n'ai pas compris ce que tu veux dire par
    evite form2.query1.free
    Et c'est normal que tu as une "violation de cle" puisque tu inseres un code dont le champ est indexer et qui existes déjà dans la table.

    Et lorsqu'on fait le code form2.query1.free donne le message violation d'accés a l'adresse 00466B76 dans le module 'projet1.exe'.lecture de l'adresse 00000000
    tu fais un free sur quelque chose que tu n'as pas creer. Si tu as déposé un composant TQuery faut pas faire le free.
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  19. #19
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par freud Voir le message
    je n'ai pas compris ce que tu veux dire par


    Et c'est normal que tu as une "violation de cle" puisque tu inseres un code dont le champ est indexer et qui existes déjà dans la table.



    tu fais un free sur quelque chose que tu n'as pas creer. Si tu as déposé un composant TQuery faut pas faire le free.
    Bon soir
    peut etre que je dois reformuler ma question

    Comment inserer des enreigistrements dans une requete filtrée?

    Je pense que le probleme de violation de clé se pose dans la nouvelle requette
    Avez vous une idée

  20. #20
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    pour inserer on va utiliser la même query qui filtre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    annee:=form1.dblookupcombobox1.text ;
    Query1.close;
     
    Query1.SQL.Clear('SELECT Article,Code_article FROM article');//la clause WHERE c'est mieux mais du moment que vous avez opter pour le filtre ....
     
    Query1.open;   
    Query1.filtered:=true;  
    Query1.Filter:='annee='+quotedstr(annee);
    ensuite vous faite votre insertion :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    procedure TForm4.Button1Click(Sender: TObject);
    Var
    Param1,Param2,annee :String;
    Begin
    Param1:=Edit1.Text;
    Param2:=Edit2.Text;
     
    Query1.Close; 
    Query1.SQL.Clear;
    Query1.SQL.Add('insert into Article (Article,Code_article) values(:Param1,:Param2)');
    Query1.ParamByName('Param1').AsString :=Edit1.Text;
    Query1.ParamByName('Param2').AsString := Edit2.Text;
    Query1.ExecSQL;
    et juste aprés l'insertion refaite la requete SELECT filtrée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Query1.close;
    Query1.SQL.Clear('SELECT Article,Code_article FROM article');//la clause WHERE c'est mieux mais du moment que vous avez opter pour le filtre ....
    Query1.open;   
    Query1.filtered:=true;  
    Query1.Filter:='annee='+quotedstr(annee);//pour anne il faut mettre une année par défaut.....
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

Discussions similaires

  1. [debutant]insertion dans une BDD
    Par EssaiEncore dans le forum ASP
    Réponses: 7
    Dernier message: 10/02/2005, 14h58
  2. INTERBASE 5.5 insertion dans une colonne BLOB
    Par mariustrezor dans le forum Bases de données
    Réponses: 4
    Dernier message: 29/10/2004, 18h06
  3. Extraction d'un .txt et Insertion dans une table
    Par PoPmiSiR dans le forum Access
    Réponses: 8
    Dernier message: 28/10/2004, 19h13
  4. Détection insertion dans une Table
    Par abelman dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 06/07/2004, 14h24
  5. [LG]Tri par insertion dans une liste chainée
    Par mister_dsg dans le forum Langage
    Réponses: 4
    Dernier message: 18/12/2003, 22h34

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