Forum Discussion

brook_grewcock's avatar
brook_grewcock
Contributor
9 years ago

ADO.CreateADOCommand produces "Provider cannot be found. It may not be properly installed"

I am using ADO.CreateADOCommand to connect to a Microsoft SQL 2005 server, but keep getting the error message "Provider cannot be found. It may not be properly installed".

This script still works on my old Win7 machine, but not on my new Win10 one so there is something I haven't installed, but I do have a 32bit copy of "SQL Server Native Client 11.0" installed (I can see that in the Drivers tab of the 32Bit ODBC Admin panel).

 

Any ideas on what I am missing?

  • brook_grewcock's avatar
    brook_grewcock
    9 years ago

    Support came through. The issue is that where as before SQL Server Native Client 10 and 11 used to live together side by side, now when you install the Client 11 redistributable on either Windows8 or Windows10. It uninstalls any version of 10 you might have.

     

    So I had SQL Server Native Client 11 installed instead of 10, and had SQLNCLI10 specified in my connection string as the provider name. Changing this to SQLNCLI11 has fixed my issue.

     

    The lesson here is to see which native drivers you have installed, and check your connection string's provider name.

3 Replies

  • SmartBearDan's avatar
    SmartBearDan
    SmartBear Alumni (Retired)

    Hi Brook,

     

    TestComplete works with ODBC drivers, so in the ODBC Data Source Administrator screen try adding an entry using the ODBC Driver for SQL Server. 

     

    ODBC.png

     

    -Dan

    • brook_grewcock's avatar
      brook_grewcock
      Contributor

      Thanks for the reply Dan. i have added a User DSN and Systyem DSN sucessfully and tested them sucessfully in the ODBC Data Source Administrator panel, but still no luck. Does this have any direct relationship to my ADO.CreateADOCommand object and connection string?

      • brook_grewcock's avatar
        brook_grewcock
        Contributor

        Support came through. The issue is that where as before SQL Server Native Client 10 and 11 used to live together side by side, now when you install the Client 11 redistributable on either Windows8 or Windows10. It uninstalls any version of 10 you might have.

         

        So I had SQL Server Native Client 11 installed instead of 10, and had SQLNCLI10 specified in my connection string as the provider name. Changing this to SQLNCLI11 has fixed my issue.

         

        The lesson here is to see which native drivers you have installed, and check your connection string's provider name.