Kann nicht geöffnet werden, weil es ist die version 852. dieser server unterstützt version 782 und früher
Ich bin mit Visual Studio 2017 und SQL Server 2014. Beim anfügen einer Datenbank-Datei in Visual Studio, bekomme ich diesen Fehler:
""
Nach der Aktualisierung der Datei habe ich diese Verbindungszeichenfolge
<connectionStrings>
<add name="con"
connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\binaaelmamorra.mdf;Integrated Security=True;Connect Timeout=30"/>
</connectionStrings>
Es funktioniert gut auf meinem Rechner, sondern auf dem client-Computer eine Fehlermeldung erscheint, die sagen
Können nicht geöffnet werden, weil es ist die version 852. Dieser server unterstützt version 782 und früher
Obwohl ich installierte SQL Server-2016 lokalen DB auf der client-Seite, ich kann immer noch nicht loswerden.
Meine zweite Frage ist: was ist die aktuelle Instanz von SQL Server auf dem die Datenbank-Datei ist nicht kompatibel?
sqllocaldb i ProjectsV13
InformationsquelleAutor Bilal Ahmed | 2017-09-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es scheint, Sie haben mehrere Instanzen von verschiedenen Versionen von SQL Server auf Ihrem Rechner.
Für die "ausgewachsenen" Versionen (Express), können Sie überprüfen, welche version Sie sind, suchen Sie in der SQL Server-Konfigurations-Manager:
Für die "LocalDB" Versionen von SQL Server (developer-orientierte Versionen), können Sie die
sqllocaldb
Kommandozeilen-tool.Erhalten Sie einen überblick, was Sie auf Ihrem Rechner mit diesem Befehl:
Dann können Sie die einzelnen Instanzen, die mit dem Befehl details:
So, in diesem erzählt Sie, dass es zwei Instanzen von SQL Server LocalDB zur Verfügung -
mssqllocaldb
ist version 13.1 (SQL Server 2016), während diev11.0
Instanz ist die version 11.0 (SQL Server 2012).Also, wenn Sie möchten, fügen Sie ein
.mdf
- Datei an eine beliebige einer von den beiden Instanzen, die Sie gerade brauchen, um pick das Recht einer, um es zu bekommen arbeiten mit der version, die Sie wollen. Und einmal haben Sie "aufgerüstet" eine Datenbank-Datei mit einer neueren version von SQL Server (wie 2016 - internen DB-version 852), können Sie NIE zurück - es gibt keine Möglichkeit, detach/attach -, backup/restore oder auf andere Weise zu erhalten diejenigen, die Binär-Dateien zu einer älteren version von SQL Server. Sie hätte ein Skript für die Struktur (und möglicherweise Daten zu Ihren neueren Datenbank-Datei zu.sql
Dateien und führen Sie diese auf die ältere version.InformationsquelleAutor marc_s
Version 852 SQL Server 2016, und die version 782 SQL Server 2014. Eine gute Referenz für die Versionen können gefunden werden auf dieser Microsoft-Seite.
Basierend auf Ihre Erläuterungen, sollte dies eine version 782 DB. Da ist es version 852 DB, dies bedeutet, dass es aktualisiert wurde mithilfe der SQL Server-2016, nicht SQL Server 2014. Dementsprechend sollten Sie prüfen, die für alle Versionen von SQL Server auf Ihrem lokalen /dev Maschine, um zu bestätigen, dass nur SQL Server 2014 im Einsatz ist, und nicht (potentiell) SQL Server 2016 installiert von VS 2017.
Zusätzlich, es klingt wie die version auf Ihrem Endbenutzer ist 2014, nicht 2016. Dies ist möglicherweise ein Problem, wenn die aktuelle DB ist ein SQL Server 2014-Modus DB. Versuchen Sie explizit eine Verbindung mit der TempDB-vor dem anschließen der DB. (Hinweis: Dies ist etwas, was ich zu tun hatte, wenn man auf eine 2014/2016 Inkompatibilität, aber ich kann mich nicht erinnern, was das eigentliche Problem war.)
InformationsquelleAutor Laughing Vergil
Wenn Sie möchten, dass Ihr Projekt generiert eine SQL Server 2014-Datenbank, die Sie anfügen können auf der client-Maschine,F erstellen Sie eine Instanz der server auf Ihrem Rechner. Um dies zu tun, öffnen Sie die Kommandozeile im administrator-Modus und geben Sie den Befehl "sqllocaldb erstellen v12.0 12.0". Dies schafft eine server-Instanz namens "v12.0" in der version 12.0 SQL Server 2014.
Wenn der server noch nicht gestartet wurde, muss der server gestartet werden mit dem Befehl "sqllocaldb start-v12.0".
Nun müssen Sie ändern Sie Ihre conectionString wie diese:
Haben Sie vielleicht setzen einige Parameter, um Ihre app.config
InformationsquelleAutor Renat Baratov