none
win2000 to win2003 [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified RRS feed

  • Question

  • Hi All,

    Im running into some problem with an in-house build VB6 com+ (vb6 mts actually) business application, that i'm tring to re-host from win2000 app server + SQL2000 db server to win2003sp2 + SQL2008.

    I have a little handicap here, since i don't have any development skills and there is no developer available who can help.

    Migrating the db to SQL2008 and connecting from the win2000 server seems to work ok.
    However i also setup the com+ app on win2003sp2 and it wont connect to neither the SQL2000 nor the SQL2008 server.
    It throws the error: "[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified"
    I use this connection string, which works ok on the win2000 machine:

    Provider=SQLOLEDB.1;UID=user;DATABASE=dbsDatabase;WSID=appserver.domain.local;APP=Microsoft Open Database Connectivity;SERVER=databaseserver.domain.local\instance;PWD=password

    I tried several variations on connection strings but keep getting this error message, done quit a bit of internet reading and ran processmonitor, I cant get my head around what might be going wrong.

    On the win2003 app server
    - Database connectivity test with ODBC data sources tool is ok
    - DTC network access is anabled
    - COM+ network access is anabled
    - User is member of local group "distributed com users"

    I'm thinking maybe it has to do with a corrupted driver SQL on the app server, but i dont know how i could verify this.

    Any help and thoughts on this issue would be greatly appriciated.

    Kind gegards, Christiaan

    Sunday, April 21, 2013 10:40 PM

Answers

  • Re-ran procmon and disovered that the program didn't had acces to the registry location where the connection string is located. Added permissions for the application service account to this registry hive, and now it works.

    • Marked as answer by Christiaan_ Friday, May 17, 2013 2:18 PM
    Friday, May 17, 2013 2:18 PM

All replies

  • You need to start using the newer OLEDB/ODBC provider/driver for SQL Server 2008. SQLOLEDB has been deprecated.

    http://www.connectionstrings.com/sql-server-2008


    Paul ~~~~ Microsoft MVP (Visual Basic)

    Monday, April 22, 2013 12:21 PM
  • Hi Paul,

    In installed the native client and made an .UDL file to verify if its works.

    Provider=SQLNCLI10.1;Integrated Security="";Persist Security Info=False;User ID=user;Initial Catalog=dbsDatabase;Data Source=dbserver.domain.local\INSTANCE;Initial File Name="";Server SPN=""

    The .UDL testconnection is ok, but the applicatien keeps giving the same error.

    ---------------------------
    Error in modWOS::Main()
    ---------------------------
    Het programma kan niet worden gestart:
    [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
    Create Collection
    ---------------------------
    OK
    ---------------------------

    Summary

    Application point of view:
    Win2000 SQLOLEDB -> SQL2000 = ok
    Win2000 SQLOLEDB -> SQL2008 = ok
    win2003sp2 SQLOLEDB -> SQL2000 = nok
    win2003sp2 SQLOLEDB -> SQL2008 = nok
    win2003sp2 SQLNCLI10.1 -> SQL2000 = nok
    win2003sp2 SQLNCLI10.1 -> SQL2008 = nok
    same error message every time

    ODBC administrator an .UDL point of view
    All above = ok

    

    Monday, April 22, 2013 2:19 PM
  • Are you sure that you don't have an ODBC connection somewhere in your app? The error you mention does not refer to OLEDB.

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Monday, April 22, 2013 2:47 PM
  • Re-ran procmon and disovered that the program didn't had acces to the registry location where the connection string is located. Added permissions for the application service account to this registry hive, and now it works.

    • Marked as answer by Christiaan_ Friday, May 17, 2013 2:18 PM
    Friday, May 17, 2013 2:18 PM