Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server
MS SQL-Server Forum Microsoft SQL-Server. Avant de poster -> FAQ SQL-Server, Tutoriels SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/06/2011, 14h52   #1
Invité de passage
 
Homme
Inscription : juin 2011
Messages : 5
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 5
Points : 0
Points : 0
Par défaut Chaine de connexion avec un serveur lie

Bonjour,

Dans une application VB6 j'ai un objet Adodc lié à une grille qui utilise cette chaine de connexion pour accéder à des données SQLServer 2005

Code :
Provider=SQLNCLI;Server=MyServer;DATABASE=myDataBase ; UID=myUser ; PWD=myPass
Cela fonctionne normalement.

Mais je ne parviens pas à trouver la syntaxe pour accéder de la même manière à un serveur lié à MyServer

La chaine de connexion

Code :
Provider=SQLNCLI;Server=MyLinkedServer;DATABASE=myDataBase ; UID=myUser ; PWD=myPass
ne fonctionne pas.

Via l'analyseur de requête ou l'entreprise manager j'ai accès normalement à ce serveur lié.

Si quelqu'un a la solution.

Merci par avance
brruno est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 16h41   #2
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 723
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 723
Points : 6 844
Points : 6 844
Un serveur lié ne peut pas être atteint directement de cette manière.
Il faut dans un premier temps se connecter au serveur de bases de données sur lequel réside votre serveur lié et ensuite utiliser les différentes méthodes à votre disposition pour interroger ce dernier.

- Requêtes en quatres parties
- openquery
- etc ..

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 17h10   #3
Invité de passage
 
Homme
Inscription : juin 2011
Messages : 5
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 5
Points : 0
Points : 0
Le problème est que je ne peux, pour des raisons de performance, ouvrir une connexion et parcourir une recordset (trop d'enregistrements à afficher)

D'où l'avantage de lier une grille à l'objet Adodc
Mais ensuite je dois spécifier la chaine de connexion
Adodc.ConnectionString = myConnection

Qui donc ne fonctionne pas avec un serveur lié.

Pour l'instant je crée une vue sur mon serveur principal qui se réfère au serveur lié.

Mais je crains que cela ne pose des problèmes en terme de maintenance.
Et, en plus, j'imagine que la requête doit s'exécuter sur le serveur principal. Donc toutes les données doivent être rapatriées et ensuite filtrées par la vue alors que sinon, seul le résultat serait renvoyé.

C'est bizarre que l'on ne puisse pas. Je ne vois pas la logique qui empêcherait cela
brruno est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 17h20   #4
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 723
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 723
Points : 6 844
Points : 6 844
Citation:
C'est bizarre que l'on ne puisse pas. Je ne vois pas la logique qui empêcherait cela
Parce qu'un serveur lié n'est qu'un objet représentant une liaison entre un serveur et un autre. Ce n'est pas un serveur en soi.

Citation:
Mais je crains que cela ne pose des problèmes en terme de maintenance.
Et, en plus, j'imagine que la requête doit s'exécuter sur le serveur principal. Donc toutes les données doivent être rapatriées et ensuite filtrées par la vue alors que sinon, seul le résultat serait renvoyé.
Si vous faites une vue qui filtre les données à rapatrier vous n'aurez que les données concernées qu seront ramenées.

Citation:
Le problème est que je ne peux, pour des raisons de performance, ouvrir une connexion et parcourir une recordset (trop d'enregistrements à afficher)
Dans ce cas pourquoi passer par un serveur lié et pas directement sur le serveur en question ? Quel intérêt dans votre cas ?

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2011, 17h57   #5
Invité de passage
 
Homme
Inscription : juin 2011
Messages : 5
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 5
Points : 0
Points : 0
Le serveur lié me sert dans un contexte général entre les 2 sites.

Cet affichage est vraiment spécifique vu le nombre d'enregistrements ramenés et les temps d'exécution.

Merci pour votre réponse.
brruno est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h51.


 
 
 
 
Partenaires

Hébergement Web