Comment créer un serveur lié à partir de SQL Server vers des tables .dbf en utilisant Advantage ODBC ou OLEDB?Comment créer un serveur lié à partir de Sql Server vers des tables .dbf en utilisant Advantage ODBC ou OLEDB?
1
A
Répondre
5
Vous pouvez utiliser le pilote OLE DB ou ODBC. J'ai généralement utilisé le pilote OLE DB. J'ai trouvé plus facile d'utiliser l'interface graphique pour la créer en premier, puis de générer les commandes SQL.
Mais ... Voici quelques commandes que j'utilisais pour tester récemment.
EXEC master.dbo.sp_addlinkedserver @server = N'DBF_TEST', @srvproduct=N'Advantage', @provider=N'Advantage OLE DB Provider', @datasrc=N'c:\ads\dbftest', @provstr=N'servertype=ads_remote_server;tabletype=ads_cdx;'
/* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'DBF_TEST',@useself=N'False',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
Ensuite, vous sélectionnez devez utiliser la syntaxe OPENQUERY
SELECT * FROM OPENQUERY(dbf_test, 'SELECT * FROM table1')
Wow, merci beaucoup. Ai-je raison de dire que le fichier .dbf doit exister sur la même machine physique? – WoundedEgo
Je suppose que vous demandez si le DBF doit être sur la même machine que le serveur Advantage. La réponse non, mais je vous recommande de conserver les données sur la même machine que le serveur Advantage. Si vous voulez les données sur une autre machine ou un NAS, cette page peut vous aider (je crois qu'elle a d'abord été supportée en 8.x) http://devzone.advantagedatabase.com/dz/WebHelp/Advantage10/index.html?master_network_attached_storage_nas_devices .htm – Edgar