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

Développement SQL Server Discussion :

Plusieurs bases dans une procédure stockée


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2014
    Messages : 174
    Points : 113
    Points
    113
    Par défaut Plusieurs bases dans une procédure stockée
    Bonjour,

    j'ai deux bases de données (Base1,Base2)

    Base1 contient un tableau (b1_table1);

    Base2 contient un tableau (b2_table1);

    b1_table1 contient 3 colonnes (b1_col1,b1_col2,b1_col3)

    b2_table1 contient 3 colonnes (b2_col1,b2_col2,b1_col3)

    j'aimerais utiliser une procédure stockée qui récupère la valeur du b1_col1 et l'enregistre dans l'autre tableau qui se trouve dans une autre base de données .

    Voici ce que j'essaye de faire mais ça ne fonctionne pas

    Cette procédure se trouve dans la base de données Master
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ALTER PROCEDURE [dbo].[spTest]
    AS BEGIN
    declare @var varchar(100)
    Exec('Use Base1')
    SET @var =  'SELECT b1_col1 FROM b1_table1'
    Exec('Use Base2')
    Exec('INSERT INTO b2_table1 VALUES ('+@var+',100,300)')
    END

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 766
    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 766
    Points : 52 563
    Points
    52 563
    Billets dans le blog
    5
    Par défaut
    Inutile de faire une procédure pour cela. Une simple requête suffit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT INTO Base1..b2_table1 
    SELECT b1_col1 100,300 FROM Base2..b1_table1;
    Apprenez Transact SQL... Lisez l'article que j'ai écrit à ce sujet :
    http://sqlpro.developpez.com/cours/s...r/transactsql/

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

Discussions similaires

  1. passage d'un nom de table dans une procédure stockée
    Par thierry V dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 26/07/2010, 16h48
  2. Réponses: 3
    Dernier message: 13/10/2007, 16h31
  3. [DEBUTANT]Récupérer plusieurs champs dans une procédure stockée
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 20/06/2007, 17h58
  4. Marquer une pause dans une procédure stockée
    Par PéPénet dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 08/11/2003, 10h42
  5. Transformation de date dans une procédure stockée
    Par bd0606 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 27/10/2003, 11h31

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