Solved

Need help with OPENROWSET using Microsoft.ACE.OLEDB.12.0

Posted on 2014-01-07
4
3,497 Views
Last Modified: 2014-01-12
I need help getting this OPENROWSET command to work when executing it in SQL Server 2012 64-bit under Windows Server 2008 R2, Enterprise.

SELECT *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','D:\EECO\E2T2.accdb', T1)

I receive the following error:

OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)" returned message "Could not find installable ISAM.".
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)".

Notes:
- "Microsoft.ACE.OLEDB.12.0" does exist as a Linked Servers Provider.

- "E2T2.accdb" is a new DB created in Access 2010 64 bit. The only options under Access Options/General/Creating databases/Default file format for Blank Database are Access 2000, Access 2002 - 2003, Access 2007. I used Access 2007.
0
Comment
Question by:akivashapiro
  • 3
4 Comments
 
LVL 17

Expert Comment

by:Kent Dyer
ID: 39763798
Let's back up for a moment..  What is your end-goal?  Are you trying add/extract a ton of records from SQL?  Is this from Access/Excel/text/or other database?  Rather than using quirky OPENROWSET, I would go to a SQL Job (formerly called a DTS Package)..
0
 

Author Comment

by:akivashapiro
ID: 39763814
What I want to do is link to tables an Access DB and use them in sql join clauses in stored procedures with tables in SQL Server.
0
 

Accepted Solution

by:
akivashapiro earned 0 total points
ID: 39763913
I got it to work:

USE [master]
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
SELECT *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','D:\E2 Test.accdb';;, [T1])

The parameter sets were required. Found the answer here (first response):
http://social.msdn.microsoft.com/Forums/sqlserver/en-US/bb2dc720-f8f9-4b93-b5d1-cfb4f8a8b1cb/the-ole-db-provider-microsoftaceoledb120-for-linked-server-null-reported-an-error-access?forum=sqldataaccess
0
 

Author Closing Comment

by:akivashapiro
ID: 39774512
I found the solution.
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

Everyone has problem when going to load data into Data warehouse (EDW). They all need to confirm that data quality is good but they don't no how to proceed. Microsoft has provided new task within SSIS 2008 called "Data Profiler Task". It solve th…
Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now