|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Alf CedanoInscription : septembre 2010 Messages : 71 ![]() |
Bonjour à tous.
J'ai trois BD différentes qui auraient en commun trois tables (tblVilles, tblDepartement, tblPays) et je voudrais avoir ces trois tables séparées de chaque BD, et me servir d'elles en tant que tables extérieures. Dans la tblVilles par exemple j'ai toutes les villes de France (et certaines villes d'autres pays), liées par un IdDepartement à leur département respectif... J'en ai presque 40,000 enregistrements seulement dans tblVilles, d'où mon intérêt d'avoir ces trois tables une seule fois. Je les ai mise dans SQLServer 2008. Mais si j’essaie par exemple de remplir un combobox avec toutes les villes depuis un formulaire d'une de mes BD, le temps d'execution est très lent (environ 25s) alors que si j'ai ma tblVilles sur la même BD le formulaire s'ouvre très vite. N'étant pas très connaisseur de SQLServer je me demande si je dois faire quelque chose du coté SQLServer (j'ai seulement exporté les trois tables avec l'utilitaire d'Access). La connexion se fait bien et le combobox est rempli avec les données. Si j’essaie d'ouvrir la table depuis une autre BD Access, même problème de lenteur. Je vous remercie si vous avez des conseils à me donner. Voici le code que j'utilise pour faire cette manip: Code :
|
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Bonjour Alfhcg,
Quel type d'objet est "dbo.qryVilles", dans SQL Server ?
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Alf CedanoInscription : septembre 2010 Messages : 71 ![]() |
Il s'agit d'une requête.
J'ai aussi essayé avec la table elle-même et la lenteur d’exécution depuis access est pareil. Par contre depuis SQLServer elle s’exécute normalement. |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Par "requête" tu entends "vue" ?
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Alf CedanoInscription : septembre 2010 Messages : 71 ![]() |
Oui, une vue. Comme j'ai déjà dit, je n'ai aucune idée de SQLServer, mais j'ai quand même réussi à faire une vue, avec le dessinateur graphique, qui ressemble bcp celui d'access.
|
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Côté SQL Server, le temps de réponse du lancement de cette vue est-il long ?
Sinon, as-tu essayé via ODBC (ta vue devient une table liée) ?
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#7 | |
|
Nouveau Membre du Club
![]() Alf CedanoInscription : septembre 2010 Messages : 71 ![]() |
Bonjour Richard.
Pour répondre à ta question la requête est lente aussi sur SQLServer, par contre si depuis la table (dbo.tblVilles) je lui dis de me lire les 40,000 premiers enregistrements, ils sont listés tous dans 2 ou 3 secondes!!! Par rapport à OCDB, j'ai en effet fait une connexion OCDB qui m'a liée la table externe (dbo_tblVilles) à ma BD. Maintenant je peux remplir mon combobox directement sans passer par un recordset qui va chercher les valeurs dans le serveur SQL. Bien que ça marche, je ne suis pas satisfait car dans ma tête j'ai cru qu'une connexion SQL marcherait niquel, sans être obligé d'avoir des tables liées. J'ai lu aussi le tutoriel de Christophe Le Fustec sur: http://ledzeppii.developpez.com/odbc-access/#LII Là il dit quelque chose qui m'a posé des questions, je cite: Citation:
Quoi qu'il en soit, ça marche et je vous remercie infiniment, vous tous qui vous êtes penché sur mon problème. |
|
|
|
00
|
|
|
#8 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Bonjour Alfhcg,
Je n'ai pas compris si, en final, l'accès via ODBC est plus rapide. Deux petites choses concernant l'accès direct à SQL Server :
N'oublies pas le flag .
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Alf CedanoInscription : septembre 2010 Messages : 71 ![]() |
Oui en ODBC cela marche très bien.
Je dois me plonger un peu sur SQLServer dès que j'aurais un peu de temps. Quant à l'evenement load il s'agissait d'un test. Je le mettrais sur l'ouverture du formulaire ou bien sur current. Merci pour tout. Je marque resolu. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com