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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Private Sub Form_Load() Dim cnt As New ADODB.Connection Dim rst As New ADODB.Recordset Dim strSQL As String strSQL = "SELECT IdVille, Ville FROM dbo.qryVilles" cnt.ConnectionString = "Provider = SQLNCLI10;" & _ "Data Source=(local);" & _ "Database=BDTestSQL;" & _ "Integrated Security=SSPI;" cnt.Open Set rst.ActiveConnection = cnt rst.Open strSQL, cnt Do While Not rst.EOF Me.cboVille.AddItem rst.Fields(0) & ";" & rst.Fields(1) rst.MoveNext Loop cnt.Close Set cnt = Nothing End Sub
Partager