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

Langage SQL Discussion :

Insertion de données avec 2 bdd différentes


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 22
    Points : 13
    Points
    13
    Par défaut Insertion de données avec 2 bdd différentes
    Bonjour à tous et à toutes,
    Avant toute chose mon environnement de travail:

    OS: Windows XP
    SQL Server 2008


    Voilà j'ai un souci. "Nan c'est pas vrai me diriez vous !" et ben si

    Je m'explique:

    Je suis sur une base de données A qui contient 2 ans d'archivage de données. Ma mission de de réaliser une optimisation des performances de cette base qui présente aucun index à titre d'exemple.

    J'ai donc reproduit une base B qui est sur le même serveur SQL que la base A afin de garder la base A intacte (j'ai pour consigne de ne pas la toucher tant que mon travail ne pourra pas être mis en production). De ce fait j'ai re-modéliser un schéma de base de données avec les jointures (FK /PK) d'origines et en commençant à supprimer des redondances (tables en doubles et variables inutiles car accessibles via requêtes sur d'autres tables).

    Toutefois, lorsque je veux importer les données de la base A dans la base B j'ai eu tout d'abord un souci d'autorisations (résolu par mes soins). Le souci que j'ai maintenant :
    --------------------------------------------------------------------------
    - Validation (Erreur)
    Messages
    Erreur 0xc0202049: Tâche de flux de données 1: Échec lors de l'insertion dans la colonne « ID_B » en lecture seule.
    (Assistant Importation et Exportation SQL Server)

    Erreur 0xc0202045: Tâche de flux de données 1: Échec de la validation des métadonnées de la colonne.
    (Assistant Importation et Exportation SQL Server)

    Erreur 0xc004706b: Tâche de flux de données 1: Échec de la validation de « composant « Destination - B » (151) ». État de validation retourné : « VS_ISBROKEN ».
    (Assistant Importation et Exportation SQL Server)

    Erreur 0xc004700c: Tâche de flux de données 1: Échec de la validation d'un ou de plusieurs composants.
    (Assistant Importation et Exportation SQL Server)

    Erreur 0xc0024107: Tâche de flux de données 1: Des erreurs se sont produites au cours de la validation de la tâche.
    (Assistant Importation et Exportation SQL Server)
    --------------------------------------------------------------------------
    Auriez vous une explication ou une démarche à suivre ou encore mieux un tutoriel afin que je comprenne et résolve mon souci ?

    Merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 22
    Points : 13
    Points
    13
    Par défaut suite
    ah j'ai oublié, j'ai aussi un souci de lien entre les tables. C'est à dire que si je veux insérer des données de la table X qui est liée à la table Y il me jette apparemment à cause d'un souci de FK...et je comprends pas non plus pourquoi...

    Merci encore de votre aide

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 761
    Points : 52 547
    Points
    52 547
    Billets dans le blog
    5
    Par défaut
    Toutes ces erreurs n'en sont AMHA qu'une au sujet de la colonne ID_B qui est en lceture seule probablement du fait de l'auto incrément.

    A vous de voir si vous devez le forcer ou ne pas le préciser.

    Lisez l'article que j'ai écrit à ce sujet : http://blog.developpez.com/sqlpro/p6...ec-sql-server/

    Pour ce qui est de la FK, c'est parce que la clef du parent n'existe pas. C'est le rôle même d'une contrainte FK.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    J'ai fait le même genre de boulot avec MySQL.

    L'import des données dans la nouvelle base est un travail minutieux qui demande pas mal de vérifications.

    Un principe simple pour éviter les problèmes de clés étrangères : Commencer par les tables qui n'en ont pas ! Puis enchaîner l'ordre des tables à alimenter en tenant compte des clés étrangères nécessaires.

    Exemple personnel :

    Utilisateur -1,1----Affilier----0,n- Partenaire
    |---------0,n----Créer----1,1- Zone dépôt

    Il est évident ici que je dois commencer par importer les données de la table Partenaire, puis la table Utilisateur, puis la table Zone dépôt. Sinon les clés étrangères vont râler.

    C'est votre schéma de BDD qui va vous guider pour ce faire.

    Quand j'aurai du temps (dans quelques mois probablement), j'écrirai probablement un article relatant mon expérience sur ce sujet.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

Discussions similaires

  1. Réponses: 0
    Dernier message: 07/01/2013, 08h12
  2. Réponses: 0
    Dernier message: 03/05/2012, 22h07
  3. Insertion de données dans une BDD Oracle avec VB.NET
    Par DashRendar dans le forum Accès aux données
    Réponses: 7
    Dernier message: 23/01/2008, 08h47
  4. Insertion de données avec Posgretsql
    Par djibril dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 18/05/2004, 11h23
  5. Réponses: 2
    Dernier message: 14/05/2004, 14h32

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