[SQLServer] Lien ODBC vers BDD distante

Résolu
pitipilot Messages postés 112 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 14 mai 2021 - 25 mai 2011 à 10:14
 flaviensamoela - 19 nov. 2015 à 08:18
Bonjour à tous, j'aimerais savoir comment créer un lien ODBC d'un poste client vers un serveur contenant une base de donnée. Lors de mes essais, une fois le fichier de connexion .dsn créée, lorsque je rentre le nom du serveur SQL (monServeur/SQLEXPRESS) il ne le trouve pas et je ne peux avoir accès à ses tables.

Dois je installé SQL Server sur tous les postes clients ?


Bonne journée.

Pitipilot.

8 réponses

pitipilot Messages postés 112 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 14 mai 2021 1
26 mai 2011 à 07:59
Salut j'ai trouvé la solution et c'est vraiment tout bête !! Une fois les paramètres d'accès à SQl appliqués, il faut soit redémarrer le pc soit redémarrer le service dans Outils d'administration/service pour que les modifs soit prises en comptes.


Je vais voir maintenant si j'arrive à écrire dans ma base.
3
flaviensamoela
19 nov. 2015 à 08:18
comment entrer le role et permission sql server dans vb6
0
4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
25 mai 2011 à 11:03
Je suppose (car tu ne précise pas ) que tu utilise MS SQL 200X. Il faut tout d'abord être sur que ton serveur est bien configuré.
Je ne rappelle plus des détaille mais il faut
1) Étendre la connexion a l'extérieur
2) Ouvrir la connexion en TCP/IP
3) Le serveur doit écouter l'ip de poste ou il est installer
4) Choisir un port précis
5) Autoriser une authentification SQL (Pas sur que ce soit obligataire)

un fois tout cela fait de puis ton code VB ( Là aussi tu ne précise pas ) tu pourras utilisé un code du style
  Set Db = New ADODB.Connection
  Db.ConnectionString = "Provider= SQLOLEDB;Data Source=SQLEXPRESS,<NUM DU PORT> ";User ID=sa;Password=;"
  Db.Open
  Db.Execute "USE <NOM DE TA DB SANS EXTANTION>"
  Set vo_info = New ADODB.Recordset
  vo_info.Open "SELECT * FROM <NOM DE TA TAB>, Db, adOpenStatic<VOIR AIDE POUR COMPRENDRE>, adLockOptimistic<VOIR AIDE POUR COMPRENDRE>

Ta j'utilise ADO

ID=sa veut dir que tu te connecte en administrateur.

Il faut que tu config ton serveur avec les deux "formulaire" que te donne MS SQL
0
pitipilot Messages postés 112 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 14 mai 2021 1
25 mai 2011 à 13:36
Salut =). Oui effectivement j'avais oublié de préciser que c'était MS SQL 2005.

J'avais déjà une chaine de connection ADODB, penses-tu qu'il sera toujours fonctionnel ?

Set cn = New ADODB.Connection 'Connexion à la DB'
    With cn
        .ConnectionString "Provider SQLOLEDB;Data Source=FR-LAN-RSVIEW-2\SQLEXPRESS;Initial Catalog=FT_log;Uid=Administrateur;Trusted_Connection=yes" 'Chaîne de connexion Sql Server'
        .Open
     End With
     
     
     Set rs = New ADODB.Recordset 'Lecture de la DB'
    With rs
        .ActiveConnection = cn
        .Open "SELECT * FROM Actions_OPE WHERE DAY (TimeStmp) = " & Day(TriDate) & " AND MONTH(TimeStmp)= " & Month(TriDate) & " AND YEAR(TimeStmp)=" & Year(TriDate) & ""
        'Sélection de la table Actions_OPE'
       
    End With


Je vais essayé d'effectuer les opérations que tu m'as décri et je te tiens au courant. Merci encore.
0
4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
25 mai 2011 à 13:55
Oui et non?

Tout dépens de la config. de ton serveur. Moi je t mis une config ou la connections et IP donc ta chaîne et fausse elle devrait être
.ConnectionString "Provider SQLOLEDB;Data Source=FR-LAN-RSVIEW-2\SQLEXPRESS" & ", NUM_DE_PORT" & ;Initial Catalog=FT_log;Uid=Administrateur;Trusted_Connection=yes" 'Chaîne de connexion Sql Server'


Il y a un num de port par défaut mais je ne m'en souviens plus (Sérieusement c pas pour te prendre la tête) sur le net tu trouverra.

Mais si tu n'a pas une config serveur TCP/IP oublie ce que je t'ai dis
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pitipilot Messages postés 112 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 14 mai 2021 1
25 mai 2011 à 16:02
Finalement j'ai suivi ce tuto http://www.sqlfr.com/tutoriaux/CONNEXION-DISTANTE-SQL-SERVER-2005_644.aspx ainsi que celui la http://www.asp-php.net/tutorial/sql-server/sqlncli.php?page=1 mais j'ai un message d'erreur à cet écran :



et celui la avec le native client :




J'ai paramétré le port UDP fixe 1433 depuis mon serveur mais dois-je redémarrer le pc pour que cela soit pris en compte car lorsque je fais telnet 1433 j'ai connection failed.
0
4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
25 mai 2011 à 16:22
Tu n'arrivera pas a te connecter par le telnet.

Va sur la machine qui a MS SQL serveur. Ouvre une console dos et tape:

SQLCMD -S SQLEXPRESS -U sa -P mot de passe

sa et le compte admin. et -P attands son mot de passe

Si ton serveur et bien config. alors tu devrais avoir "<1" qui s'affiche.

Tien moi au courant.
0
4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
26 mai 2011 à 09:38
Super !!!! Tien moi au courant
0
pitipilot Messages postés 112 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 14 mai 2021 1
30 mai 2011 à 11:14
C'est bon le lien ODBC est crée il faut bien pensé à ajouter un utilisateur SQL server dans l'onglet sécurité pour que celui ci ai accès à la BDD =)
0
Rejoignez-nous