Ich habe eine Beispieldatenbank mit SQL Server 2014 Express erstellt und meiner Windows Form-Lösung hinzugefügt. Wenn Sie zum Öffnen darauf doppelklicken, wird dieser Fehler angezeigt.
Die Datenbank kann nicht geöffnet werden, da es sich um Version 782 handelt. Dieser Server unterstützt Version 706 und früher. Ein Downgrade-Pfad wird nicht unterstützt
Ich verwende Visual Studio 2013. Ich verstehe wirklich nicht, dass ich die beiden neuesten Versionen von Microsoft-Produkten verwende und sie nicht kompatibel sind. Vermisse ich etwas Wie kann ich diese Datenbank öffnen?
sql-server
visual-studio
Omer K.
quelle
quelle
AttachDBFileName
). Angenommen, die Datenbank ist bereits an Ihre lokale.\SQLEXPRESS
Instanz angehängt , ändern Sie einfach die Verbindungszeichenfolgen, um auf diesen Server (Data Source=.\SQLEXPRESS;Initial Catalog=OMERDENEME;...
) zu verweisen, und beenden Sie die VerwendungAttachDBFileName
.Antworten:
Versuchen Sie , Tools> Options> Database Tools> Data Connections> SQL Server Instance Name.
Der Standardwert für VS2013 ist
(LocalDB)\v11.0
.Das Ändern auf
(LocalDB)\MSSQLLocalDB
zum Beispiel scheint zu funktionieren - kein Fehler mehr in Version 782.quelle
(LocalDB)\v11.0
. Wenn Sie den Servernamen so ändern,(LocalDB)\MSSQLLocalDB
dass dieser Fehler bezüglich der Versionsnummer behoben wird.Versuchen Sie, die Kompatibilitätsstufe zu ändern, die für mich funktioniert hat.
Überprüfen Sie, um welches Niveau es sich handelt
Dann machen Sie es kompatibel mit der älteren Version
Standardmäßig ändert SQL Server 2014 die Kompatibilität der Datenbankversionen auf nur 2014, wobei
@@ version
Sie anhand der Funktion, die Sie erkennen sollten, feststellen können, um welche Version von SQL Server es sich handelt.Führen Sie dann den obigen Befehl aus, um die Version zu ändern, die Sie haben.
Zusätzlicher Schritt: Stellen Sie sicher, dass die Zugänglichkeit der Datenbank nicht zurückgesetzt wird. Klicken Sie dazu mit der rechten Maustaste auf die Eigenschaften des Ordners und der Datenbank. (Stellen Sie sicher, dass Sie Rechte haben, damit Ihnen kein Zugriff verweigert wird.)
quelle
Für mich hat die Verwendung der von codedom bereitgestellten Lösung nicht funktioniert. Hier können wir nur die Kompatibilitätsversion der bestehenden Datenbank ändern.
Das eigentliche Problem liegt jedoch darin, dass die interne Datenbankversion aufgrund von Änderungen im Speicherformat nicht übereinstimmt.
Weitere Informationen zur SQL Server-Version und ihrer internen Datenbankversion sowie zur Datenbankkompatibilitätsstufe finden Sie hier. Es ist also hilfreich, wenn Sie Ihre Datenbank mit der SQL Server 2012 Express- Version oder niedriger erstellen . Oder starten Sie Visual Studio 2015 Preview.
quelle
Diese Lösung löst mein Problem: (von: https://msdn.microsoft.com/en-us/library/ms239722.aspx )
So hängen Sie eine Datenbankdatei (.mdf) dauerhaft vom Knoten Datenverbindungen an
Öffnen Sie das Kontextmenü für Datenverbindungen und wählen Sie Neue Verbindung hinzufügen.
Das Add - Verbindung Dialogfeld angezeigt.
Wählen Sie die Schaltfläche Ändern .
Das Dialogfeld Datenquelle ändern wird angezeigt.
Wählen Sie Microsoft SQL Server und klicken Sie auf OK .
Die Verbindung hinzufügen erscheint wieder im Dialogfeld mit Microsoft SQL Server (SqlClient) angezeigt in der Datenquelle Textfeld ein .
Geben Sie im Feld Servername den Pfad zur lokalen Instanz von SQL Server ein oder suchen Sie ihn. Sie können Folgendes eingeben:
Informationen zu SQL Server Express LocalDB und SQL Server Express finden Sie unter Übersicht über lokale Daten .
Wählen Sie entweder Windows-Authentifizierung verwenden oder SQL Server-Authentifizierung verwenden .
Wählen Sie Datenbankdatei anhängen , Durchsuchen und öffnen Sie eine vorhandene MDF-Datei.
Wählen Sie die Schaltfläche OK .
Die neue Datenbank wird im Server-Explorer angezeigt. Es bleibt mit SQL Server verbunden, bis Sie es explizit trennen.
quelle
Eine andere Lösung besteht darin, die Datenbank auf z. B. 2012 zu migrieren, wenn Sie die Datenbank aus z. B. SQL Server Manager 2014 "exportieren". Dies erfolgt im Menü Aufgaben-> Skripts generieren, wenn Sie mit der rechten Maustaste auf Datenbank klicken. Folgen Sie einfach dieser Anweisung:
https://www.mssqltips.com/sqlservertip/2810/how-to-migrate-a-sql-server-database-to-a-lower-version/
Es generiert ein Skript mit allem und führt dann in Ihrem SQL Server-Manager, z. B. 2012, das Skript wie in der Anweisung angegeben aus. Ich habe den Test mit Erfolg durchgeführt.
quelle
Ich verwende VS 2017. Standardmäßig lautet der Name der SQL Server-Instanz (LocalDB) \ MSSQLLocalDB. Wenn ich jedoch die Kompatibilitätsstufe der Datenbank wie in der Antwort von @ user3390927 auf 110 herabstufte, konnte ich die Datenbankdatei in VS anhängen und den Servernamen als "localhost \ SQLExpress" auswählen.
quelle