I am not setting up the provider in the code. Only thing I set as connection string is the name of DSN. This DSN could point to any database, I need to figure out which databse it is (As in SqlServer or Oracle)! Hopefully I can do this using a connection object.
Can someone please direct me to the property that is can use for this? An exaple would be helpful, any help is appreciated.
--Shilpa
I know through non-managed code you can access this information through SQLGetInfo calls. For example:
SQLGetInfo(..., SQL_DBMS_NAME, ...) --> returns name of driver used in connection string
SQLGetInfo(..., SQL_DRIVER_NAME, ...) --> returns name of driver's DLL
SQLGetInfo(..., SQL_DRIVER_VER, ...) --> returns version of driver
There are many other keywords you can use to determine at runtime many attributes about the driver and the server. There's a more complete listing on http://msdn2.microsoft.com/en-us/library/ms131672.aspx
As an alternatve, and if you have access, you could browse your registry since this is where your DSN information is stored. (HKEY_LOCAL_MACHINE\SOFTWARE\ODBC for system DSN's, HKEY_CURRENT_USER\Software\ODBC for user DSN's).
~Warren
No comments:
Post a Comment