2012-08-15 1 views
2

Disons qu'il existe deux tables dans SQL Server. Mon client utilise la base de données Access 2003 sur leur propre serveur. SQL Server 2008 R2 est sur le serveur de diff. Leur front d'accès est écrit en VBA. Je sais que je pourrais les laisser se connecter à mon serveur SQL en utilisant le fournisseur ADO et OLEDB. Pour cela, ils devraient ajouter une référence dePossibilités de connexion de l'application Access au serveur SQL sur un serveur différent?

Tools-->References--> MS ActiveX objects 6.0 Library 

Et avec la chaîne de connexion fournie:

Provider= SQLOLEDB.1; Integrated Security = SSPI; Initial catalog=DatabaseName; Data source =ServerNamethathostsSQLSeerver 

Existe-t-il d'autres façons de les laisser se connecter à SQL Server? Quelles sont les meilleures façons de le faire en termes de performance?

Veuillez partager vos opinions. Merci.

+0

Vous pouvez utiliser trop ODBC mais OLEDB est une meilleure solution. – Simon

+1

@simon OleDB est sur le point de sortir [Microsoft SQL Server, nom de code "Denali", sera la dernière version à prendre en charge OLE DB, ODBC est la nouvelle chose nouvelle] (http://blogs.lessthandot.com/index.php/DataMgmt/DBProgrammation/MSSQLServer/microsoft-sql-server-nom de code-denali) – Fionnuala

+0

Comme suggéré ici - Open Database connectivité est le choix préféré. Donc, non, oleDB n'est pas une meilleure solution ou même un meilleur choix (une telle suggestion est un de ces mythes nés par ceux dans cette industrie qui sont hors de la boucle pour ainsi dire). En fait, nous ne pouvons pas utiliser oleDB pour SQL Azure, mais le choix de la connectivité Open Database recommandée fonctionne très bien. –

Répondre

2

Dans MS Access 2007 et sur, la méthode recommandée est celle des tables liées, aucune référence n'est requise, cela peut être fait par le biais du code ou du menu. Microsoft Access 2003 prend également en charge les tables liées.

Plus d'info: http://office.microsoft.com/en-us/access-help/import-or-link-access-to-sql-server-data-HA010341762.aspx

+0

Merci pour votre contribution Remou. Mais le client ne veut pas de manière liée aux tables. Notre équipe n'hébergera que leurs tables backend. Ils auront besoin d'un peu de mécanisme pour se connecter et laisser leur application VBA frontale parler à notre serveur SQL db qui réside dans un serveur diff au-delà de leur Access db. Toutes les pensées, suggestions, articles etc. seront utiles. TIA. – Nemo