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 :

[SQL SERVER] Mettre à jour une base de donnée


Sujet :

MS SQL Server

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2005
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 46
    Points : 33
    Points
    33
    Par défaut [SQL SERVER] Mettre à jour une base de donnée
    Bonjour,
    J'ai deux bases de donées : A et B
    Elles sont composées des memes tables.
    Cependant 3 tables de la base A ont subit des modifications et je dois reporter ces modifications dans les tables correspondantes de la base B.
    Je travail donc sur deux bases et je veux mettre à jour 3 tables via la base B.
    Comment puis je faire svp ?
    Merci

  2. #2
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Bonjour,

    Des modifications de structure ou de contenu ?

    structure :
    - à la main avec du code DDL (ALTER TABLE, etc)
    - avec un DTS ou SSIS (quelle version de SQL Server ?)
    - avec un outil comme SQLDbDiff : http://www.sqldbtools.com/, SQL Delta http://www.sqldelta.com/, l'un est freeware/shareware, l'autre commercial. Il y en a quelques autres.

    contenu :
    - à la main avec création d'un serveur lié, et UPDATE/INSERT d'un serveur vers l'autre
    - avec un DTS ou SSIS
    - avec les mêmes outils que cité ci-dessus.

    Ceci répond-t-il à ta question ?
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  3. #3
    Nouveau membre du Club
    Inscrit en
    Janvier 2005
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 46
    Points : 33
    Points
    33
    Par défaut
    Je veux faire une modification de contenu..sachant que mes tables sont nommées exactement pareil dans la base A et dans la B.
    Les 2 bases sont sur le meme serveur.
    Je travail sur SQL SERVER 2000.

  4. #4
    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
    Si tu met A dans E avec Z au dessus de T alors X sera différent de Q et R restera tel quel...

    C'est amusant non ?

    Merci donc de respecter ceci :
    http://www.developpez.net/forums/sho...302#post983302

    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/ * * * * *

  5. #5
    Nouveau membre du Club
    Inscrit en
    Janvier 2005
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 46
    Points : 33
    Points
    33
    Par défaut
    désolé...mais j'estime avoir été clair tout de meme dans mes explication....
    En faite voila ce que j'ai fais pour l'instant.

    Script passé sur la base de reception des données :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    insert into MaTable
    select * from MaBase.dbo.MaTable
    J'insere dans MaTable qui est la table de ma base B.
    Je sélectionne toute les données qui sont dans la table de ma base A.

    Mais j'ai une erreur :
    Une valeur explicite e la colonne identité de la table 'MaTable' ne peut être spécifiée que si on fait appel à la liste des colonne et si IDENTITY_INSERT est ON.
    Comment corriger cette erreur svp ?

  6. #6
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    cette erreur vient du fait que tu as un champ auto incrementé dans tes tables

    Or quand tu fais le select * il séléctionne egalement le champ auto-incrementé de ta premiere table

    lors de l'INSERT tu tentes donc d'inserer une valeur explicite ( "à la mano") à ton champs auto incrementé, qui par definition n'accepte pas qu'on lui attribue une valeur "en dur" puisque il s'auto-incremente...

    Je crois ne pas avoir été tres clair mais j'espere que cela te suffira


    en clair tu dois juste refaire ta requete de select en faisant :

    INSERT INTO TABLEB(colonne2,colonne3,colonne4,etc...) select colonne2,colonne3,colonne4,etc... FROM TABLEA
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

Discussions similaires

  1. Réponses: 5
    Dernier message: 30/04/2013, 00h32
  2. Réponses: 3
    Dernier message: 24/05/2012, 19h30
  3. [SQL SERVER 2K] ACTUALISER une Base de Données
    Par dondiavolo1983 dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 11/04/2007, 07h41
  4. Réponses: 1
    Dernier message: 15/09/2006, 11h24
  5. [Oracle/SQL-Server] Comment crypter une base de données ?
    Par [DreaMs] dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 28/11/2005, 18h02

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