When you try to open a record object with a URL specified as the active connection, you might get the following error:
Run-time error '-2147467259 (80004005)':
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.
↑ Back to the top
ADO did not interpret the specified URL as a valid connection string. Since the active connection did not specify any provider, ADO prompts the OLE DB provider for ODBC (MSDASQL), that is the default provider, for more information about the Data Source.
↑ Back to the top
Make sure you specify the "URL=" keyword in your source parameter. This lets ADO open the record with the specified URL over which all subsequent record operations apply.
↑ Back to the top
Steps to Reproduce Behavior
- Start a new Visual Basic project. Form1 is created by default.
- Add a Reference to Microsoft ActiveX Data Objects 2.5 Library
- Paste the following code in the general declaration section of Form1:
Private Sub Form_Load()
Dim rec As New ADODB.Record
' The following line would generate error -2147467259.
rec.Open "", "http://servername"
' Comment the above line and uncomment the following line to resolve the problem
' rec.Open "", "URL=http://servername"
rec.Close
End Sub
NOTE: You should replace "http://servername" with a valid URL from your environment.
- Run the above code to notice the behavior.
↑ Back to the top
For more information on the Record object, please refer to the Platform SDK or to the MSDN Library online.
↑ Back to the top