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 :

Serveur lié et option de curseur


Sujet :

MS SQL Server

  1. #1
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 153
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut Serveur lié et option de curseur
    Bonjour,

    J'utilise une application tierce qui se connecte à une base de données SQL Server.

    Dans cette base de données, j'ai :
    1/ des tables
    2/ des vues qui pointent sur les-dites tables
    3/ des vues qui pointent vers des éléments distants par l'intermédiaire de serveurs liés

    L'application tierce faire des opérations simples, du genre "select * from xxx", où j'indique simplement le nom de l'objet sur lequel faire la requête.

    Lorsque je mets le nom d'une table, ou le nom d'une vue qui pointe sur des objets locaux, aucun problème.
    Lorsque je mets le nom d'une vue qui fait appel à des objets sur les serveurs liés, j'ai un message d'erreur : "la méthode du curseur n'est pas supportée"

    Si je fais un "select * into tmp ffrom vue_serveurs_lies" et ensuite j'utilise la table créée, ça fonctionne parfaitement. Donc pas un souci de données.

    Qu'est-ce qui peut en être la cause ?

    Le programme (pourtant écrit en C#) appelle SQL Server par l'intermédiaire du drivers ODBC plutôt que par le drivers .NET (cherchez pas).

    Comment voir côté SQL Server la requête réellement exécutée, et les éventuelles options ODBC (forward only, etc.) pour déduire les sources possibles de l'erreur ? Car le support du logiciel est d'assez mauvaise fois, et nous dit que si ça marche pas, ça vient de notre serveur lié, sans chercher à nous proposer de solution...
    On ne jouit bien que de ce qu’on partage.

  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 768
    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 768
    Points : 52 577
    Points
    52 577
    Billets dans le blog
    5
    Par défaut
    Parce que vos curseurs sont implémentés côté application. Les requêtes SQL sont produites localement (côté appli) en croyant avoir affaire à une table.
    Modifiez les propriété de votre curseur en l'implémentant côté serveur et tout ira mieux !

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

  3. #3
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 153
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    Merci pour la réponse.

    Je vais tâcher de voir avec le support s'ils sont capables de nous fournir un patch allant dans ce sens
    On ne jouit bien que de ce qu’on partage.

  4. #4
    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
    Comment voir côté SQL Server la requête réellement exécutée, et les éventuelles options ODBC (forward only, etc.) pour déduire les sources possibles de l'erreur ? Car le support du logiciel est d'assez mauvaise fois, et nous dit que si ça marche pas, ça vient de notre serveur lié, sans chercher à nous proposer de solution...
    Avec un Sql profiler+ sys.dm_exec_sessions/connections pour vois les options de sessions.
    Enfin pour les curseurs voir sys.dm_exec_cursors
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

Discussions similaires

  1. [WS 2008 R2] Serveur d'impressions - Options des pilotes
    Par nicolasfo dans le forum Windows Serveur
    Réponses: 7
    Dernier message: 02/02/2015, 16h25
  2. Supprimer key option sur serveur
    Par boutss dans le forum CVS
    Réponses: 0
    Dernier message: 10/01/2011, 16h44
  3. Message d'erreur sur curseur, option de requete ont changé
    Par max057 dans le forum Bases de données
    Réponses: 6
    Dernier message: 06/07/2007, 17h01
  4. Récupérer les options envoyer par un serveur dhcp
    Par nunuschi dans le forum Réseau
    Réponses: 3
    Dernier message: 27/08/2006, 14h24
  5. [Concept] Curseur coté client et curseur coté serveur
    Par freud dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 13/09/2002, 22h13

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