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

Requêtes MySQL Discussion :

insertion d'une partie d'une table entre 2 bases


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2009
    Messages : 164
    Par défaut insertion d'une partie d'une table entre 2 bases
    bonjour!

    pour mon projet, je dois archiver une partie d'une base de données vers une autre base de donnée (sur le meme server)
    j'ai trouvé comment faire .
    mon probleme est que, pour certaine tables, une fois qu'elles ont été archivé 1 fois, la fois d'apres il y a souvent PAS ou PEU de changement, j'aurai voulu donc mettre une contrainte de non existence dans la tables. pour ce faire j'ai écris:

    gecofi-neuilly : base principale
    test: base d'archive
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      $resultat = $objConnexion->query("INSERT INTO test.departement(IDdepartement,IDsociete,Nom)
    	SELECT IDdepartement,IDsociete,Nom 
      	FROM `gecofi-neuilly`.departements
      	WHERE IDdepartement NOT IN (SELECT IDdepartement
      			FROM test.departement)");
    ci-dessus j'ai voulu faire: inserer toutes les lignes de gecofi-neuilly.departements vers test.departement seulement si la ligne n'existe pas deja... sauf que ca marche pas .. le SELECT imbriqué (dans le NOT IN) bug.. quelqu'un pourrait m'aider s'il vous plait?

    sachant que je voudrai éviter d'avoir à récuperer toutes les lignes de la table dans test dans un tableau car il peut y avoir BEAUCOUP de lignes...

  2. #2
    Invité
    Invité(e)
    Par défaut
    Ca relève plus du Sql ou de php ce problème non ?

  3. #3
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2009
    Messages : 164
    Par défaut
    Citation Envoyé par Florian Voir le message
    Ca relève plus du Sql ou de php ce problème non ?
    probleme SQL


    probleme resolu: il faut utiliser LEFT JOIN ... ON ... avec ma version (mysql 4)
    probleme de version simplement:
    exemple de correction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $resultat = $objConnexion->query("INSERT INTO test.ressources_charges (ID,IDaffaire,IDcharge,IDressource)
    								SELECT grc.ID,grc.IDaffaire,grc.IDcharge,grc.IDressource
    								FROM `gecofi-neuilly`.ressources_charges grc
    								LEFT JOIN test.ressources_charges trc ON trc.ID = grc.ID
    								WHERE trc.ID IS NULL
    								AND grc.ID IN (".join(',',array_keys($listRessourcesCharges)).")");

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/07/2013, 23h08
  2. Réponses: 8
    Dernier message: 15/06/2010, 16h50
  3. Sélectionner seulement une partie d'une valeur d'une cellule
    Par ArthurO0O dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/08/2007, 11h05
  4. masquer une partie d'une vidéo par une banniere
    Par lezabour dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 16/10/2006, 16h47
  5. copier une partie d'une image vers une autre
    Par gregcat dans le forum Langage
    Réponses: 1
    Dernier message: 14/04/2006, 13h39

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