Connection table sql serveur [Résolu]

l0r3nz1 221 Messages postés mercredi 20 février 2008Date d'inscription 17 mars 2012 Dernière intervention - 17 mars 2008 à 17:15 - Dernière réponse : l0r3nz1 221 Messages postés mercredi 20 février 2008Date d'inscription 17 mars 2012 Dernière intervention
- 18 mars 2008 à 14:40
Bonjour,
Décidément le passage à SQL serveur est difficile. Je peux me connecter à une bdd ACCESS liée avec SQL serveur mais seulement avec DAO car avec ADO il n'y a pas d'option équivalente au "dbSeeChanges" de DAO (seule la lecture est ok). Il devrait pourtant y avoir une méthode pour se connecter directement à une table SQL et il devrait être possible de se connecter avec DAO qui est censé être plus efficace avec SQL serveur?
Voila mon code en vb2005:
cnString = "Provider=SQLOLEDB.1;DATA SOURCE=.\SQLEXPRESS;INITIAL CATALOG=" & bdd & ";Connect Timeout=30;User Instance=True;integrated seurity=BSTR;"
J'ai essayé pas mal de possibilité mais je bloque , même avec vb2005 je crois que c'est une question de configuration plus qu'une question de code, en tout cas je bloque vraiment donc si quelqu'un pouvait me dire ce qui deconne dans le ptit bout code ci dessous par exemple:
'connection tout ce qu'il y a de plus classique avec des commentaires quend je veux tester differents type de bdd
Dim cn As New System.Data.SqlClient.SqlConnection
Dim cmd As New System.Data.SqlClient.SqlCommand
Dim sqlR As System.Data.SqlClient.SqlDataReader
Dim bdd

bdd = "C:\data\atelier\missionsOr\conditionsReelles\sfr 2g.mdb"
'bdd = "\data\2008 - Serveur orange 1.adp"
'bdd = "C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data\2007 - Serveur orange 7SQL.mdf"
'cn.ConnectionString = "server=DNSsqlServeur\SQL Server (MSSQLSERVER);database=" & bdd & ";Persist Security Info=false;Integrated Security=SSPI;"
'cn.ConnectionString = "Data Source=" & "DNSsqlServeur\SQL Server (MSSQLSERVER)" & ";Initial Catalog=" & bdd & ";Integrated Security=SSPI; "
'cn.ConnectionString = "server=DNSsqlServeur\SQL Server (MSSQLSERVER);database='" & bdd & "'Data Source='.\SQLEXPRESS';Integrated Security='True';Connect Timeout='30';User Instance='True'"
'cn.ConnectionString = "server=.\SQLEXPRESS;AttachDbFilename=" & "'\\Pcbur0610-1\c$\data\atelier\TEST VB VBA SQL SERVEUR\manipulationSQLserveurv2CS.adp';Integrated Security=True;Connect Timeout=30;User Instance=True"
'cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & bdd ' & ";data1.options = dbSeeChanges;"
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & bdd & ";Integrated Security=True;Connect Timeout=30;User Instance=True"
'cn.DataSource = ".\SQLEXPRESS"

cn.Open()
cmd.Connection = cn
cmd.CommandText = ("SELECT * FROM configuration_active")
sqlR = cmd.ExecuteReader()
Do While sqlR.Read()
ajtxt(sqlR.GetString(0) & "; " & sqlR.GetValue(0))
Loop
sqlR.Close()
cn.Close()


Conclusion: si seulement un indice pouvait m'être présenté pour que ce passage à SQL serveur soit moins difficile...
Merci d'avance

PS: J'ai aussi laissé une source
http://www.vbfrance.com/codes/CONNECTION-BASES-DONNEES_46091.aspx
Qui permet la lecture et écriture (DAO) et E/S ADO pour des bdd ACCESS sans intérêt immédiat c'est difficile avec les bdd (souvent trop spécifique) mais pour récupérer le code ça peut être pas mal.

@+
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 17 mars 2008 à 17:30
3
Merci
Alors visiblement tu es un peu largué dans les techiques d'accès aux BDD.

DAO est vieux et obsolète depuis plus de 10 ans, il date de VB4. Il était founis avec VB5 et VB6 pour des raisons de compatibilités seulement.
A l'époque il était déjà très vivement conseiller d'utiliser ADO, son successeur, nettement plus stable et puissant.

Depuis avec la sortie de la plateforme .Net, ADO a été remplacé par ADO.Net (en version 2.0 sous VS2005)
Donc tes accès aux bdd sous VB2005 se font en ADO.Net et rien d'autre.

Pour ce qui est des types de bases, pour les bases SQLServer tu dois utiliser le outils du namespace System.Data.SQLClient.
Quant aux bases Access, l'utilisation se fait via les outils du namespace System.Data.OleDB
Pour ce qui est des chaines de connections, avec SQL tu utilisera une chaine du type :
Data Source= myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
ou éventuellement :
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;

Avec Access, tu utilisera :
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;

Tu trouvera toutes les infos sur les chaines de connection sur le site http://www.connectionstrings.com/default.aspx

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php

Merci cs_casy 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 84 internautes ce mois-ci

Commenter la réponse de cs_casy
l0r3nz1 221 Messages postés mercredi 20 février 2008Date d'inscription 17 mars 2012 Dernière intervention - 17 mars 2008 à 20:22
0
Merci
Et dire que je m'acharnais sur jurassique park. ouf merci.
Commenter la réponse de l0r3nz1
l0r3nz1 221 Messages postés mercredi 20 février 2008Date d'inscription 17 mars 2012 Dernière intervention - 18 mars 2008 à 14:40
0
Merci
Bonjour,
Casy le site que tu m?as présenté est très intéressant mais le problème persiste. En fait je t'avoue que j'avais déjà essayé les différents types de chaine de connexion.
Maintenant je pense que pour ce
"Échec de l'ouverture de session de l'utilisateur 'moi''. L'utilisateur n'est pas associé à une connexion SQL Server approuvée."
c'est plus un problème de configuration... reste à fouiller! j'y arrive bien avec VBA...
(http://www.vbfrance.com/codes/CONNECTION-BASES-DONNEES_46091.aspx )
Commenter la réponse de l0r3nz1

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.