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 :

Remplir table sql server depuis une table excel


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut Remplir table sql server depuis une table excel
    Bonjour à tous,

    J'ai des données stockées dans une table excel que je voudrais importer dans une table sql server, comment faire svp?
    j'utilise sql server 2005.
    Merci d'avance pour votre réponse.

  2. #2
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Bonsoir,

    Si votre manipulation est occasionnelle ou exceptionnelle , vous avez l'assistant import / export via SSMS.

    Si vous devez automatiser cet import passez par un package SSIS + planification

    ++

  3. #3
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut
    Merci mais est ce que vous pouvez detailler encore plus votre réponse, car je ne vois pas du tout ce que c'est SSMS ou SSIS et comment les utiliser pour importes une table excel?? en fait j'ai une table dans ma base de données qui est vide et je veux la remplir à partir d'un tableau excel.
    Merci d'avance.

  4. #4
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Bonjour,

    Sans souci.

    SSMS --> SQL Server Management Studio (Console graphique de management sql server). Vous pouvez administrer votre serveur sql depuis cette interface. Dans votre cas vous avez, en autre , l'assistant d'import de données.

    SSIS et BIDS --> Sql Server Integration Services et Business Intellignece Developpement Studio. Si vous connaissez sqlserver 2000 c'est une grosse évolution par rapport aux lots DTS. Sinon pour résumé très simplement, ce sont 2 outils qui vous permettent de créer et gérer des packages d'intégration de données graphiquement. Vous pouvez dans votre cas utiliser ces outils pour automatiser votre import.

    Il y a quelques tutoriels sur le site. Je vous invite à les regarder

    Présentation SSIS
    Automatisation d'exécution d'un package SSIS

    ++

  5. #5
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    Avec SSMS (SQL Server Management Studio), lorsque vous faites une clic droit sur une base de données et que vous choisissez toutes les tâches, il y a une option "Importer des données".
    Un assistant démarre alors, vous permettant de spécifier le fichier à importer et la table dans laquelle l'importer.
    A la fin de l'assistant, vous avez la possibilité de sauvegarder ce que vous avez spécifié sous la forme d'un package SSIS (SQL Server Integration Services)

    @++

  6. #6
    Expert éminent
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 180
    Billets dans le blog
    16
    Par défaut Méthode "boeuf"
    Une méthode parmi d'autres, selon une approche batch.

    Supposons que nous travaillions dans un contexte batch et considérons en conséquence le fichier Excel suivant (4039 cantons français, source INSEE) :





    Personnellement, j’exporte ce fichier en fichier d’extension csv, afin de séparer les colonnes par des ";", ce qui sera fort utile pour la suite. Soit 'E:\fsmrel\canton2007.csv' le nom de ce fichier.

    Pour réussir l’exportation du fichier au format csv vers une table SQL, je le bricole un peu :

    — Ajout d’un séquenceur automatique (colonne A ci-dessous). En fait, ceci est totalement facultatif, et vous pouvez parfaitement vous en abstenir.

    — Ajout d’une colonne que je laisse vide (colonne M ci-dessous). Je me souviens avoir eu parfois des problèmes pour ne pas l'avoir fait. Aujourd’hui, je ne me pose plus de questions et procède systématiquement ainsi.

    — Ajout d’un délimiteur d’enregistrement (colonne N ci-dessous). Il s’agit d’un symbole quelconque, par exemple "²²".





    Mon système est un peu lourd et il ne manquera pas d’internautes pour proposer mieux, mais en tout cas, ça marche parfaitement et c’est facilement adaptable.

    Instructions à faire exécuter par le SGBD :

    Procéder à la définition de la table cible de l’opération, puis de la commande « Bulk Insert » qui réalise l’opération d’import des données, du fichier vers la table.
    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
     
    Create Table Canton
    (NoLigne                 char(08)     Not null,
     Region                  Char(03)     Not null,
     DepartementNo           Char(03)     Not null,
     Arrondissement          char(02)     Not null,
     CantonNo                Char(04)     Not null,   
     CantonComposition       Char(04)     Not null,   
     ChefLieu                Char(05)     Not null,
     TypeArticle             Char(02)     Not null,
     ArticleMajusc           Char(05)     Not null,   
     NomEnclairMaj           varChar(48)  Not null,
     ArticleMinusc           Char(05)     Not null,   
     NomEnclairMin           varChar(48)  Not null,
     Vide                    Char(02)     Not null,
    ) ;
     
    Bulk insert Canton 
        From 'E:\fsmrel\canton2007.csv'
        With (
                 FieldTerminator = ';' -- Séparateur de champs
               , Rowterminator = '²²' -- Marque de fin d’enregistrement
               , FirstRow = 2 -- Je ne récupère pas la 1re ligne du fichier
               , Lastrow = 4040    -- Dernière ligne, sinon ça arrive à planter en fin de fichier
               , CodePage = 'ACP'   -- Sinon Rhône devient Rh?ne, etc.
             );
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

Discussions similaires

  1. [AC-2007] Comment lier une partie d'une Table Sql Server avec une table Access
    Par mirage3000 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 02/09/2011, 03h59
  2. Réponses: 3
    Dernier message: 20/08/2010, 21h48
  3. [AC-2007] mise à jour d'une table SQL server depuis MS Access
    Par avalenza dans le forum Projets ADP
    Réponses: 1
    Dernier message: 10/02/2010, 20h04
  4. Réponses: 0
    Dernier message: 27/11/2007, 17h17
  5. [C#] Récupération d'une image depuis une table SQL Server
    Par borgfabr dans le forum Accès aux données
    Réponses: 10
    Dernier message: 08/04/2004, 13h20

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