Get the ODBC database type from ADO

  Could someone advice me how I could find the database
type after I have made a ADO connection to it from a ODBC
data source.

Any help is greatly appreciated.

Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

WalterMConnect With a Mentor Commented:
You can inspect the connection object's properties collection to obtain additional information.

Assuming that your connection string is stored in a variable called ConStr, try this:

--- example code ---

Dim Con As ADODB.Connection

Con.Open ConStr  ' Use you own connection string here

With Con.Properties
    Debug.Print "OLE DB Version"; Tab(30); " = "; .Item("OLE DB Version").Value
    Debug.Print "DBMS Name"; Tab(30); " = "; .Item("DBMS Name").Value
    Debug.Print "DBMS Version"; Tab(30); " = "; .Item("DBMS Version").Value
    Debug.Print "Provider Name"; Tab(30); " = "; .Item("Provider Name").Value
    Debug.Print "Provider Friendly Name"; Tab(30); " = "; .Item("Provider Friendly Name").Value
    Debug.Print "Provider Version"; Tab(30); " = "; .Item("Provider Version").Value
End With

--- end example code ---

Hope this helps,

I'm not entirely sure what you're after, but see if this helps:

There is a PROVIDER property, that can have the following values, though this is usually set before you connect:
  MSIDXS - Index Server
  ADSDSOOBject - Active Directory Services
  Microsoft.Jet.OLEDB.4.0 - MS Jet Databases
  MSDAORA - Oracle
  MSDataShape - MS Data Shape
  MSDAIPP.DSO.1 - Internet Publishing
  MSDAOSP - OLE DB, simple tablular format
  MSPersist - Persisting rs Objects

Hope this is helpful
The Provider property is all I can think of also.
If your data environment is called DataEnvironment1 and your connection is called DataConnect then use:
This will return something close to the list provided by dbirdman. For SQL Server I get SQLOLEDB.1
Greetings, dilantha.  You have asked 41 questions within Experts Exchange, but only closed 20 of them.  I will post follow up comments on all your open items to help you navigate to them and complete them.

It's time to clean up this topic area and that means taking care of this question. Your options at this point are:
1. Award points to the Expert who provided an answer, or who helped you most. Do this by clicking on the "Accept Comment as Answer" button that lies above and to the right of the appropriate expert's name.
2. PAQ the question because the information might be useful to others, but was not useful to you. To use this option, you must state why the question is no longer useful to you, and the experts need to let me know if they feel that you're being unfair.
3.  Ask Community Support to help split points between participating experts.  Just comment here with details.
4.  Delete the question because it is of no value to you or to anyone else.  To use this option, you must state why the question is no longer useful to you, and the experts need to let me know if they feel that you're being unfair.
If you elect for option 2, 3 or 4, just post comment with details here and I'll take it from there.  We also request that you review any other open questions you might have and update/close them.  Display all your question history from your Member Profile to view details.
Hi Experts:
In the event that the Asker does not respond, I would very much appreciate your opinions as to which Expert ought to receive points (if any) as a result of this question.  Likewise, you can also suggest that I PAQ or delete the question.
Experts, please do not add further "answer" information to this question.  I will be back in about one week to finalize this question.
Thank you everyone.
Moondancer :)
Community Support Moderator @ Experts Exchange
P.S.  Engineering has been advised about the error in the comment date/time sort order on some older questions.  REGARDING POINTS and more:  
Hello all,

dilantha is a duplicate account, and it has been closed.

Please advise as to who should get points for this.

Community Support
All Courses

From novice to tech pro — start learning today.