链接ms访问sql server

时间:2013-02-19 16:25:47

标签: sql-server ms-access sql-server-2008-r2

我想通过SQL Server R2实例访问我的MS Access数据库。

有可能吗?如果是,那么?

2 个答案:

答案 0 :(得分:1)

答案简短:

OPENDATASOURCE

http://msdn.microsoft.com/en-us/library/ms179856.aspx

我有一些例子here

我的例子不是“直接命中”,但是很有帮助,恕我直言。

MSDN文章中的示例:

SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\DataFolder\Documents\TestExcel.xls;Extended Properties=EXCEL 5.0')...[Sheet1$] ;

这是一个更长的版本。 但是,您需要列出您的操作系统的Sql Server版本(32或x64)。 x64 Sql Server将与Jet数据库进行一些小问题。

/* Setup */

/*
--Run this ONCE  

sp_configure 'show advanced options', 1;
 GO
 RECONFIGURE;
 GO
 sp_configure 'Ad Hoc Distributed Queries', 1;
 GO
 RECONFIGURE;
 GO

EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
 GO
 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1
 GO

 RECONFIGURE;
 GO

*/




CREATE VIEW [dbo].[vwJetDatabaseWrapper]

AS

/*
SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\work2\DotNet\MultiRDBMSSupport\DataStores\AccessDatabaseCopy\Nwind.mdb;')...[Customers] ;
*/

/* OR  */


SELECT * FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0',
'Data Source=C:\work2\DotNet\MultiRDBMSSupport\DataStores\AccessDatabaseCopy\Nwind.mdb;')...[Customers] ;




GO

答案 1 :(得分:0)

您将使用链接服务器。这是一个链接,我发现的问题几乎与你的问题完全一致,并且讨论了如何设置它。

http://social.msdn.microsoft.com/Forums/en/sqlgetstarted/thread/589ca193-3541-4c5e-965c-4c515d6b476b