MDF Cannot Connect from Visual Studio - asp.net

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.

Related

Why is no database shown in Visual Studio?

My SQL Server Object Explorer is not showing any databases:
I also get an error A network-related or instance-specific error occurred while establishing a connection to SQL Server. .... When I run the website, the error being shown is The system cannot find the file specified. Furthermore, SQL Server is missing from Services:
(It was installed together with Visual Studio and was never used separately)
Yesterday, everything worked like charm; I had multiple databases with tables and was able to access the data. Today, the same project can't even start, no db's either. What's wrong with Visual Studio here? Thanks
I've had the same problem before. Took me a while to figure it out. What you need to do is go here: https://www.microsoft.com/en-us/download/details.aspx?id=42299
In my case, i'm using SQL Server 2014 Management Studio. You must find the one that suits the version of SQL studio that you're using (2008, 2012, 2014).
Click the big download button and now, it is very important that you choose the proper version. Check:
Express 32BIT\SQLEXPR_x86_ENU.exe if you're running on a 32-bit PC, or
Express 64BIT\SQLEXPR_x64_ENU.exe if you're running on a 64-bit PC
It is very important that you install Express version.
Next, once you install that, you should be able to see the SQL Server (MSSQLSERVER) in your services.msc, along with few other SQL services installed.
Open Visual Studio 2015 and in SQL Server Object Explorer window right click on SQL Server and choose Add SQL Server... option. It should prompt you to connet to the server from SQL Server Management Studio.
If you kept everything by default during the installation, just type . (dot) for the Server name and click connect. Now it should load the database.
It turns out that Visual Studio does not come with MS SQL Server in the default installation. It is necessary to install SQL Server Data Tools from the MS website manually. VS custom installation also allows to do that, but you will need an installer. Just make sure to select SSDT in the custom installation components menu. Additionally, I also ran an update from VS itself that allowed me to install SQL Server 2008, 14, and 16. I am finally able to access DB in VS!

ASP.NET Error with Database

I have been learning ASP.NET and building a little customer portal. I used the built in CreateUserWizard. I wanted to look inside the ASPNETDB.MDF file to see how it was storing the users and maybe add some rows of my own. I opened the file in SQL Server Management Studio and viewed the file. I closed it with out saving.
Now when I try to run the program I get this new error:
The database 'C:\PROJECTS\PORTAL\PORTAL\APP_DATA\ASPNETDB.MDF' cannot be opened because it is version 706. This server supports version 662 and earlier. A downgrade path is not supported.
So I assume opening the project in SQL Server it upgraded the version to 706, How can I either delete this database and create a new one or change the version of the database to an support version.
Thanks
The following blog entry will help you
http://conceptdev.blogspot.com/2009/04/mdf-cannot-be-opened-because-it-is.html
As soon as you attached it to SQL Server 2012, the database was upgraded to version 706. As the error message suggests, there is no way to downgrade the file back to version 662 (SQL Server 2008 R2).
You can run the script found in your Visual Studio folder -
[drive:]\%windir%\Microsoft.NET\Framework\version\asp_regsql.
It'll display a UI for you to select the server to install a new copy on. Here's a MSDN article about it.

Problem with aspnet_regsql.exe

i wrote a website with asp.net 4 and sql server 2008. But my host sql version is 2005 so i get script from my database in sqlserver 2008 and convert it to 2005. Then i import .sql file that is exported from 2008 iin sqlserver 2005 and retrieve it. Then i make a back up with sqlserver 2005 and upload it on my host. Now i have one problem:
I used aspnet_regsql.exe to create the database schema.
But when i want to login to my website it throws following error:
The 'System.Web.Security.SqlMembershipProvider' requires a database
schema compatible with schema version '1'. However, the current
database schema is not compatible with this version. You may need to
either install a compatible schema with aspnet_regsql.exe (available
in the framework installation directory), or upgrade the provider to a
newer version.
What is the problem?
Which version of ASP.NET is your published website using? It looks like it might be different than what you're using in development.
The version info is configured on a per-AppPool basis in IIS.

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."

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!

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