PC Review


Reply
Thread Tools Rate Thread

Re: 2147467259 Unexpected Error from external database driver [Non admin user]

 
 
GS
Guest
Posts: n/a
 
      10th May 2012
An access violation has more to do with user permissions rather than a
problem with the provider, but in this case it may be due to the way
you construct your connection string and/or initiate connection to the
db.

I use a version-aware function to set up my connection string according
to which provider is appropriate for the running instance of Excel. My
connection string and connection constructs are slightly different than
yours, though!

Example:
Construct a connection string something like this:
If appXL.Version => 12 Then
'use ACE provider connection string
Else
'use JET provider connection string
End If

This precludes that I have to construct 2 separate connection strings.
I use constants for this:

Const sProvider As String = "Microsoft.Jet.OLEDB.4.0;"
Const sExtProps As String = "Excel 8.0;"

Const sProvider12 As String = "Microsoft.ACE.OLEDB.12.0;"
Const sExtProps12 As String = "Excel 12.0 Xml;"


You could configure your code something like this:

<aircode>
'Use a var to hold data source
sDataSource = "<FullPathAndFilename>" '//edit to suit
If appXL.Version => 12 Then
'use ACE provider connection string
sConnect = "Provider=" & sProvider12 & _
"Data Source=" & sDataSource & _
"Extended Properties=" & sExtProps12
Else
'use JET provider connection string
sConnect = "Provider=" & sProvider & _
"Data Source=" & sDataSource & _
"Extended Properties=" & sExtProps
End If
</aircode>

'Construct your SQL statement
sSQL = "SELECT * FROM..."

'Grab the data into a recordset
Set rsData = New ADODB.Recordset
rsData.Open sSQL, sConnect, adOpenForwardOnly, adLockReadOnly,
adCmdText

I can't speak to XL2010 because I don't have it installed yet. Apps
using this are run on client machines and nobody's reported a problem
with it not working in XL2010.

<FWIW>
I have apps that were built before XL2007 that still work in v12> using
the JET provider because (apparently) support for that is included with
ACE (or so I've been told)!

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup!
comp.lang.basic.visual.misc
microsoft.public.vb.general.discussion


 
Reply With Quote
 
 
 
 
GS
Guest
Posts: n/a
 
      11th May 2012
It should be noted that the code sample in my previous reply is from a
VB6 project that automates Excel. To use the code in Excel VBA
projects, replace *appXL* with *Application*, OR use the *appXL*
variable as a fully qualified reference to the Excel application
running the code.

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup!
comp.lang.basic.visual.misc
microsoft.public.vb.general.discussion


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Unexpected Error from External Database Driver 8458 David Microsoft Access 0 2nd Apr 2005 08:07 AM
Unexpected error from external database driver (15877) =?Utf-8?B?SmFja3k=?= Windows XP Security 0 20th Oct 2004 12:55 AM
Unexpected error from external database driver (9492) Joel Microsoft Access 3 30th Aug 2004 05:33 PM
unexpected error from external database driver (10019) Rene Microsoft Access 0 9th Aug 2004 02:38 PM
[ODBC Paradox Driver] Unexpected error from external database driver (11010). Maciek Pawlowski Microsoft ADO .NET 1 27th Jan 2004 03:08 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 04:15 AM.