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 :

Utiliser une fonction utilisateur stockée sur un serveur lié


Sujet :

MS SQL Server

  1. #1
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 53
    Par défaut Utiliser une fonction utilisateur stockée sur un serveur lié
    Bonjour,
    Dans une requête utilisant une table sur un serveur lié (serveur SCPDWH) et qui marche très bien, j'ai voulu rajouter une colonne utilisant une fonction stockée sur ce même serveur.
    Là ça ne marche plus du tout (nota : la fonction en local marche très bien)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT  
         libelle_reseau
       , num_reseau
       , num_sous_reseau
       , num_secteur
       , SCPDWH.GCODW.dbo.fct_rech_libelle_concession (num_reseau,num_secteur) as libelle_concession
    FROM 
         SCPDWH.GCODW.dbo.GCO_D_Secteur_Reseau_Antenne
    J'ai l'erreur suivante
    Msg*117, Niveau*15, État*1, Ligne*5
    Le nombre de préfixes dans le nom de objet 'SCPDWH.GCODS.dbo.' est supérieur au maximum autorisé, 2.
    Même en local sur le serveur SCPDWH, si j'utilise le nom complet ça ne marche pas.
    J'en déduis qu'il n'est pas possible d'utiliser une fonction à travers un serveur lié.
    Quelqu'un peut-il me le confirmer ?

    Merci

  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,

    Supprimez les références à votre serveur et votre base pour votre fonction ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT  
         libelle_reseau
       , num_reseau
       , num_sous_reseau
       , num_secteur
       , dbo.fct_rech_libelle_concession (num_reseau,num_secteur) AS libelle_concession
    FROM 
         SCPDWH.GCODW.dbo.GCO_D_Secteur_Reseau_Antenne AS t
    ++

  3. #3
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 53
    Par défaut
    Bonjour,
    Si je fais ça la fonction est recherchée sur la base à laquelle je suis connecté et bien sûr elle n'y est pas puisqu'elle sur un autre serveur.

    du coup j'ai le message
    Msg*195, Niveau*15, État*10, Ligne*20
    'fct_rech_libelle_concession' n'est pas une option nom de fonction intégrée reconnue.

  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
    Autant pour moi .. je n'ai pas fait attention à votre problème.

    Je ne pense que l'appel d'une fonction UDF puisse se faire en 4 parties via un serveur lié. Vous devez utiliser OPENQUERY pour cela.

    ++

  5. #5
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 53
    Par défaut
    Ok merci
    ça passe très bien avec OPENQUERY

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 24/03/2011, 09h08
  2. [HTML] Utilisation d'une image stockée sur un serveur dans un fichier HTML
    Par Rosa2008 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/07/2008, 08h01
  3. Utiliser une fonction stockée
    Par sdanvbnet dans le forum SQL
    Réponses: 14
    Dernier message: 27/05/2008, 14h36
  4. Exécuter une appli .net stockée sur un serveur
    Par Invité(e) dans le forum Framework .NET
    Réponses: 1
    Dernier message: 04/05/2007, 09h28
  5. Réponses: 5
    Dernier message: 30/11/2005, 09h48

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