I have SQL Server 2008 R2 installed, but I still can't run the project and open the database because "the server supports version 655 and earlier." - asp.net

I have a database in my App_Data folder that was created using SQL Server 2008 R2.
When I try to view a page, I get this error message:
The database 'C:\My Projects\NCPA\APP_DATA\NCPA.MDF' cannot be opened
because it is version 661. This server supports version 655 and
earlier. A downgrade path is not supported.
Could not open new database 'C:\My Projects\NCPA\APP_DATA\NCPA.MDF'.
CREATE DATABASE is aborted.
An attempt to attach an auto-named database for file C:\My
Projects\NCPA\APP_DATA\NCPA.MDF failed. A database with the same name
exists, or specified file cannot be opened, or it is located on UNC
share.
Here's my connection string:
<add name="NCPA" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NCPA.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
I have SQL Server 2008 R2 and Visual Studio 2010 installed on my computer. I've searched this problem all over, and everything says "You need R2", but I already have it.
I've also seen that I need to check the SQL Server instance name by going to Tools > Options > Database Tools > Data Connections, mine just says SQLEXPRESS. Is that right? Should it be something else?
What do I need to do here? Is there something that I might not have installed? Is there a setting in Visual Studio that I need to change? I feel like every solution I've found is so vague, or the solution is something I've already done.
EDIT: Here's what I have if I start up SQL Server, and go to Help > About:
Microsoft SQL Server Management Studio - 10.50.1617.0
Microsoft Analysis Services Client Tools - 10.50.1617.0
Microsoft Data Access Components (MDAC) - 6.1.7600.16385
Microsoft MSXML - 3.0 4.0 6.0
Microsoft Internet Explorer - 9.0.8112.16421
Microsoft .NET Framework - 2.0.50727.4961
Operating System - 6.1.7600

While you may have installed SQL Server 2008 R2, are you sure you upgraded the instance you're using to R2?
Use the SQL Server Installation Center from your R2 media and the "Upgrade from SQL Server 2000, SQL Server 2005, or SQL Server 2008" option to upgrade your SQLEXPRESS instance to R2.

My guess is that your code is trying to connect to the database instance that was install with Visual Studio 2010 instead of the SQL Server 2008 R2 instance that you have installed.

Are you really, really sure that the SQL Server you are trying to attach the database to is SQL Server 2008 R2?
Your error message says that your SQL Server only supports version 655, and everything I found concerning these version numbers said that version 655 is SQL Server 2008 (non-R2):
SQL Server: Attach incorrect version 661
SQL Server 2008 R2 bumps the database version
Cannot read SQL Server 2008 database - version increased to 661 from 655
If you really have SQL Server 2008 R2 and it still doesn't work, you'll probably have to re-install the server, like raym0nd said in the comment to his answer.
EDIT:
Steven, none of the numbers you posted is the "real" version number of your SQL Server.
You can find out the actual version number by running select ##version in a query window in Management Studio.
On my machine, Help --> About says Microsoft SQL Server Management Studio - 10.50.1617.0 like on your machine, but when I run select ##version I get this:
Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64) Mar 29 2009 10:11:52
Copyright (c) 1988-2008 Microsoft Corporation Express Edition (64-bit)
on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
And here comes the weird part:
I am 100% sure that I installed SQL Server 2008 R2 on my machine.
In fact, the SQL Server stuff in my start menu says "SQL Server 2008 R2" everywhere, and the Help --> About window that you mentioned has a huge SQL Server 2008 R2 logo as well.
But according to several lists that I just found, 10.0.2531.0 is SQL Server 2008 SP1.
So my installation seems somehow messed up as well.
Strange, very strange...

I encountered the similar issue, when trying to attache an .mdf files that was created on another machine running SQL Server 2008 R2 Express, to the SQL Server 2008 R2 Express on my machine..
I did install 2008 (non-R2) and then 2008 R2 on my machine.
After spending hours googling to find a solution, eventually unsuccessful, I simply decided to download the installer SQLEXPR_x64_ENU.exe from here and run it again, hoping it would solve (Windows 7 64 bit)
On the installation Wizard under Installation, I selected Upgrade from SQL Server 2000, SQL Server 2005 or SQL Server 2008 and continued to press Next until it disappeared (Obviously you will have to wait until it finish processiong each step).
That's it. I was able to attach the same file..

Download and reinstall the new MS R2 SQL SERVER , When Microsoft updates something, it doenst support older versions most of the time.

Here what worked for me without trying any updates!
From Visual Studio --> Server Explorer --> Add New Connection
Change the data source to Microsoft SQL server
Server name : My computer's name or localhost
At the drop down list choose the database you want
Everything works fine! No updates and no 661 problems!

Related

Determine what SQL Server version am I currently using on Visual Studio 2013

I have a problem with this, I have multiple SQL Server version, and I wanted to delete the others so that I can have only one version, but I can't determine what my visual studio is currently using and I don't know what should be deleted so that I can get rid of the whole SQL Server version. Hope you can help me thanks.
If you open a connection to the database within Visual Studio you can run the statement SELECT ##Version which will tell you more information.
See https://msdn.microsoft.com/en-us/library/ms177512.aspx
For example when I run it I get
Microsoft SQL Server 2014 - 12.0.2000.8 (X64) Feb 20 2014 20:04:26
Copyright (c) Microsoft Corporation Developer Edition (64-bit) on
Windows NT 6.1 (Build 7601: Service Pack 1)
as the result.
With an open connection, you can run the following statement:
select serverproperty('ProductVersion')
That will give you a string that is programmatically parsable, like '9.00.5000.00' for an old Microsoft SQL Server 2005 or '12.0.2000.8' for Microsoft SQL Server 2014.
https://msdn.microsoft.com/en-us/library/ms174396.aspx

Problems with App-Data in Asp.net

I am trying to open App-Data from created webform. The problem is I cannot choose a SQL server Database and always get a message saying "Connection to SQL database files(.mdf) require SQL server 2005 Express or SQL Express to be installed and running on the local computer"! I am using Visual Studio 2010 and also downloaded Ms SQL Server R2 2008 Express but nothing work.Please Help!

MDF Cannot Connect from Visual Studio

I am getting this error and I have SQL Server 2012 installed anyone know what's wrong? I am trying to attach a database file into my Visual Studio 2010.
The database 'X' cannot be opened because it is version 661. This
server supports version 655 and earlier. A downgrade path is not
supported.
Could not open new database 'X'. CREATE DATABASE is aborted.
An attempt to attach an auto-named database for file X failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
The database file was created and/or attached on a SQL Server instance that was of a newer version than the one you have. If you bring your local instance up-to-date to a newer build, then you should be okay.
More specifically - version 661 is SQL Server 2008 R2. The instance you are attaching (651) to is SQL Server 2008 RTM or SP1. Be sure it is using SQL Server 2012 instance instead of perhaps a local SQL Express instance.
See here:
http://www.sqlskills.com/blogs/paul/sql-server-2008-r2-bumps-the-database-version/
Turns out the problem is with regard to an Express Edition. I cannot use the full version because the mdf file I'm binding requires user instance which is only supported by Express Editions. I downloaded the SQL 2012 Express from this https://www.microsoft.com/betaexperience/pd/SQLEXPWT/enus/default.aspx which allows for LocalDB and all the problems go away.

Installing SQL server 2005 if SQL Server 2008 is installed

My application runs on SQL Server 2005. I have added bootstraper to install SQL Server Express 2005. It ensures to install SQL Server Express 2005 at installation time.
My question is if my user has already got SQL Server 2008? Will the bootstraper still work the same way? Will it be able to install SQL Server 2005 as 2008 is advance?
The predefined SQL Server 2005 prerequisite in Visual Studio uses a custom EXE to determine if it needs to be installed or not. So you cannot see the detection criteria.
You can try testing the scenario you mentioned on a clean machine and see what happens. This is the only way you can determine if it will be installed or not.

Connecting to AdventureWorks database (SQL Server 2005 Express) through Visual Studio Professional 2008

I am following the learning ASP.NET 3.5 by O'REILLY to write some ASP.NET 3.5 code using Visual Studio 2008 SP1. I have gotten to the point to where I need to Configure a Data Source using the SqlDataSource control. I chose Microsoft SQL Server (SqlClient) even though I have SQL Server Express 2005 - This seems like the only logical choice.
I get to the Add Connection window and successfully add a Server name and I use the Select or enter a database name of AdventureWorks. When I click on Test Connection I get the Test Connection Succeeded message box.
Unfortunately, when I click OK I get an error message of the following:
Could not load file or assembly 'Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral,
PublicKey Token=89845dcd8080cc91' or one of its dependecies. The system cannot find
the file specified.
At his point I am at a loss and everywhere I look and find something similar to my issue it involves other versions of either Visual Studio or SQL Server.
I'd really appreciate any help on this!
You may investigate this recipe.
You may need to reinstall your copy of SQL 2005 Express. But sure to install all of the client-side developer packages in the installer.
I had the exact same issue.
Following the suggestions in this thread , I went to the "Microsoft SQL Server 2008 Feature Pack, August 2008 " - and downloaded (and installed) the "Microsoft SQL Server 2005 Backward Compatibility Components ". This did not help.
Then I also downloaded and installed the following components: SharedManagementObjects.msi, sqlncli.msi, SQLSysClrTypes.msi.
And now it works for me.
I'm using SQL Server 2008 Express and Visual Web Developer 2008 Express Edition.

Resources