2
votes

I have a ASP site which is working fine on Windows Server 2003 & IIS 6.0. I migrated to Windows Server 2012 R2 IIS 8.5

I am getting an error when it tries to connect to a database:

Provider cannot be found. It may not be properly installed

Error Details:
2014-11-05 10:33:06 10.30.62.21 POST _main.asp |50|800a0e7a|Provider_cannot_be_found._It_may_not_be_properly_installed. 80 - XX.XX.XX.XX Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;+Trident/5.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+.NET4.0C;+.NET4.0E;+.NET+CLR+1.1.4322;+InfoPath.3) /bottomright.asp?sAction=assist 500 0 0 1859

My connection string is as below:

GetConnectionString = "Provider=SQLNCLI.1;Data Source=" & m_DALServer & _
                      ";User Id=user;Password=pwd;Connect Timeout=3;"

I have checked the ODBC Data Source Administrator (32 bit) on new server(2012) and found below two related drivers

  1. SQL Native Client 2005.90.4035.00 Microsoft Corporation SQLNCLI.DLL
  2. SQL Server 6.03.9600.163.84 Microsoft Corporation SQLSRV32.DLL

I have enabled my app pool to 32 bit and Managed Pipeline to Classic.

2

2 Answers

0
votes

Some drivers where installed by Tech Support Team. Which drivers I am not sure. But because of the patches I saw SQL Server Native Client 10 available in ODBC sources and my issue was resolved without any code change.

If any one having same problem kindly check if the correct drivers are installed on the server. You can also verify by going to ODBC Sources(32 bit) and check if the SQL Server Native Client 10 is available.

Thanks all for your time.

0
votes

Try SQLCNCLI and SQLOLEDB as your data provider.
These are both OLEDB drivers, rather than ODBC.

Here's a list of the connection strings for each version of SQL from http://www.connectionstrings.com/sql-server/:

  • SQLNCLI     - for SQL Server 2005
  • SQLNCLI10 - for SQL Server 2008
  • SQLNCLI11 - for SQL Server 2012