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 :

Comparaison Table Excel table Mssql


Sujet :

MS SQL Server

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut Comparaison Table Excel table Mssql
    Bonjour,
    Je suis un débutant en SGBD (étudiant ingé en méca) et je doit effectuer la MaJ d'une BdD SQL a partir d'un fichier excel.
    J'ai lu quasiment tout les posts du forum, et j'ai vu que vous parliez de DTS, PowerAMC etc..
    Etant ignare à ce sujet, je ne suis pas arrivé a comprendre la procédure, et même si elle s'appliquer a mon cas.

    J'ai une table article dans ma MdD comportant plusieurs article de type :
    cod_art, qté_eco etc... la clef primaire étant cod_art.

    J'ai une table excel comportant certains de ces articles avec des caractéristiques mais aussi des nouveaux.

    J'aurais aimé savoir comment comparer ma liste excel et ma base de données pour connaître les articles existant dans ma fiche excel mais pas dans la table article de ma BdD.
    Et ensuite mettre à jour les articles dans ma base à partir de mon fichier excel.

    Merci Bcp

  2. #2
    slc
    slc est déconnecté
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 36
    Points : 37
    Points
    37
    Par défaut
    Hello,
    le plus simple (a mon avis ) est d'importer les données du fichier excel dans ta base de données via la commande 'bulk insert'

    Ensuite il suffit de mettre a jour ta table par rapport a la table contenant les données importées.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    C'est a dire que je j'importe la fiche excel dans une table "bidon" dans la base et aprs je fait une MaJ de la table Article a partir de la table bidon??

    Dans c cas la est-ce tu peux comment marche la commande BULK INSERT et comment on met a jour une table a partir d'une autre??

    Merci Beaucoup, je sais je suis un gros boulet

  4. #4
    Membre averti
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Points : 398
    Points
    398
    Par défaut
    Slt,

    Oublie le BULK INSERT pour un fichier excel.

    Avec DTS tu peux tres facilement importer ton fichier excel dans une table de travail et apres tu lances une procedures stockees qui fait le travail de comparaison et de mise a jour.

    A+

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Je comprends le DTS pour contre je sais pas comment on fait une Maj d'une base a partir d'une autre.
    Peux-tu m'eclairer??

  6. #6
    Membre averti
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Points : 398
    Points
    398
    Par défaut
    Si ta base est sur le meme serveur tu peux faire des requetes croisees entre bases.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Champ FROM Base.dbo.Table
    si c'est sur 2 serveurs differents il faut deja parametrer tes serveurs pour qu'ils puissent communiquer entre eux, pour cela regarde du cote des serveurs lies apres tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Champ FROM [NomSeveur].Base.dbo.Table
    a+

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    En fait soit je suis tres con ou je suis tres mauvais, mais j'arrive a rien!!

    Disons que ma table source est article1 est que ma tabl cible est article2 , qu'est-ce qu'il faut que je fasse pour que la table article2 soit mise a jour par la table article1 (la table article 1 ne contient que les ligne que je veux modifier).
    Je suis désolé de parraitre si con mais la je suis completement bloqué.

    Merci encore!!

  8. #8
    Membre averti
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Points : 398
    Points
    398
    Par défaut
    Slt,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Insert into Table1 (champ1,Champ2 ....)
    Select Champ1, Champ2, ...
    from Table2
    a+

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Merci ca marche bien, sauf que ca ne met pas a jour les lignes, cela en cré d'autre!
    Est-ce qu'il y a une manip pour lui dire qu'il faut mettre a jour les lignes deja créées (en prenant comme critére de selection le Champx (clef primaire) et de créer les lignes pour lesquelles la clef primaire, Champx n'existe pas?

    Si je suis chiant dites le moi ;-)

    Merci beaucoup!!!

  10. #10
    Membre averti
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Points : 398
    Points
    398
    Par défaut
    Slt,

    Pas vu que c'eatit une maj que tu voulais !!

    meme principe (attention ce n'est pas du SQL ANSI ...) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Update Table1 set table1.champ1 = table2.champ1
    table1.champ2 = table2.champ2
    ...
    from table2
    where table1.cle = table2.cle
    un truc du genre, cf la doc pour l'ordre update pour + de precisions.

    a+

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Pour l'instant je travaille sous MDSE pour valider la methode, donc pas de DTS :-((, donc j'en reviens au probléme de l'importation des données!!!.
    J'ai une table "article" qui posséde x enregistrements sous MDSE.
    De l'autre coté j'ai une feuille excel qui posséde y enregistrements.
    J'aimerais savoir comment on syncronyse les deux??
    Ou sinon comment mettre a jour la table "article" a partir de la feuille excel, c'est à dire, modification des articles deja créés dans ma tables ou création des nouveaux!!! en prenant comme clef le co_art!!

    Merci Bcp

  12. #12
    Membre averti
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Points : 398
    Points
    398
    Par défaut
    Slt,

    Sans DTS il va falloir que tu ecrives un petit prog qui fait ca, ou a la limite une macro excel.

    a+

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Ah!!!!!!!!!!!
    Ben C'est pas gagné d'avance cette histoire!!!!!!
    Est-ce que tu as une idée d'ou je pourrais trouver un petit freeware qui me fait ca ou une macro ???
    Car la ca devient vraiment en dehors de mes capacités???

    Merci!!

  14. #14
    Membre averti
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Points : 398
    Points
    398
    Par défaut
    Slt,

    La http://support.microsoft.com/default...;EN-US;Q321686 tu as plusieurs solutions. Dont l'une via des requetes distribuees.

    a+

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Ok je vais tout lire et voir ce que je peux faire.
    Merci pour ton aide, mais je pense que je vais encore avoir besoin de tes lumiére d'ici pas longtemps!!!

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    En fait j'ai telecharger la version d'eval de SQL server donc j'ai reussi a importer ma base via DTS.

    Merci pour tout!!!

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 17
    Points : 14
    Points
    14
    Par défaut msde??
    slt,

    Pour l'instant je travaille sous MDSE pour valider la methode, donc pas de DTS (, donc j'en reviens au probléme de l'importation des données!!!.

    dis moi stoplais, quand tu dis que tu travaille avec msde, ca veut dire quoi? c'est une version bridé de sql server avec la meme interface ou tu utilise access avec le moteur MSDE??

    merci

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

Discussions similaires

  1. [WD17] Table dans table dans table je pense ?!
    Par franck34matlab dans le forum WinDev
    Réponses: 8
    Dernier message: 08/07/2014, 14h06
  2. import excel 2007 dans SQL 2005 et comparaison sur 2 tables
    Par fredfleu dans le forum Développement
    Réponses: 0
    Dernier message: 23/07/2009, 14h10
  3. [VBA-EXCEL] Comparaison de 2 tables Excels
    Par tangjuncn dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/02/2007, 11h24
  4. Comparaison de 2 tables (1 interne et 1 externe) en SQL
    Par nicky0007us dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 17/11/2005, 13h25
  5. comparaison entre 2 tables
    Par halina dans le forum Requêtes
    Réponses: 10
    Dernier message: 13/05/2005, 15h18

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