2016-05-31 22 views
6

Poprzednio miałem tylko wersję SQL 12 zarówno (localdb)\ProjectsV12, jak i (localdb)\MSSQLLocalDB . To wtedy zainstalowałem VS 2015 Update 1 wraz z narzędziami SSDT (dla projektów baz danych).Pochodzenie MSSqlLocalDB i ProjectsV ##

zainstalowaniu Update 2 i teraz:

enter image description here

Wskazówka MSSQLLocalDB jest jeszcze na starej wersji.

Jednak współpracownik zrobił nową instalację VS 2015 i ma w ten sposób:

enter image description here

Więc oni są na nowszej wersji MSSQLLocalDB, a ja jestem na starszy. Chociaż obaj jesteśmy do aktualizacji 2 Visual Studio.

Miałem nadzieję przejść do używania nazwy niezależnej od wersji MSSQLLocalDB. Problem polega na tym, to nie będzie działać, jeśli każdy jest w różnych wersjach, bo mam konfigurację kompilacji o uruchomienie projektu bazy danych do localdb, która wymaga użycia SqlPackage, która jest specyficzna wersja:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\SqlPackage.exe

Chcę zrozumieć, gdzie i jak MSSQLLocalDB zostanie zainstalowany i zaktualizowany. Jestem prawie pewien, że ProjectsV12/13 jest częścią instalacji Visual Studio.

Co instaluje MSSQLLocalDB i co go aktualizuje?

Duplikat

Proponowana duplikat tylko opisuje MSSQLLocalDB jako "SQL Server 2014 domyślnym LocalDB nazwie instancji". To nie mówi nic o tym, co jest instalowane jako część lub co aktualizuje. Dzięki

+0

Możliwy duplikat [LocalDB SQL Server 2014 Express tworzy 2 wystąpienia (localdb) \ ProjectsV12 & (localdb) \ MSSQLLocalDB?] (Http://stackoverflow.com/questions/27197359/localdb-sql-server-2014-express -creates-2-instances-localdb-projectsv12-loc) – ErikEJ

+0

@ErikEJ Tak więc wzmianka o MSSQLLocalDB w odpowiedzi "(localdb) \ MSSQLLocalDB to domyślna nazwa instancji programu SQL Server 2014 LocalDB" nie odpowiada na pytanie, skąd pochodzi ten egzemplarz lub jak zostanie uaktualniony. – AaronLS

+0

Twój współpracownik zainstalował podgląd programu SQL Server 2016 – ErikEJ

Odpowiedz

8

Istnieje kilka powiązanych pytań tutaj.

Jaka wersja SqlPackage.exe używać

SqlPackage i wszystkie SSDT narzędzia są kompatybilne wstecz z SQL Server 2005. Należy użyć następującego 130 wersja uruchomić przeciwko dowolnej bazy danych. Posiada najnowsze poprawki i można kierować wszelkie publicznie wydane wersje SQL:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\130\SqlPackage.exe 

to będzie działać przeciwko MSSQLLocalDB niezależnie od tego, czy jest to v13.0 lub v12.0.

LocalDB Przypadki - jak są one tworzone i zarządzane

MSSqlLocalDB jest instancja domyślna zawsze zainstalowany na komputerze. ProjektyV12 i ProjectsV13 są tworzone przez SSDT przy użyciu LocalDB API.Celem posiadających odrębnych wersjach jest

  • Aby utrzymać izolację z wystąpienie domyślne, ponieważ jest on używany przez wiele innych procesów & typów projektów
  • Aby zapewnić mamy wersję znane (np V13), tak, że możemy rzetelnie publikować z najnowszych funkcji SQL Server, aby go

Dlaczego ty i twój współpracownik mają różne instancje

zainstalowaniu współpracownik VS2015 Aktualizacja 2 bezpośrednio, bez zainstalowanej poprzedniej wersji. Oznacza to, że starszy kod nigdy nie utworzył instancji ProjectsV12 na swoim komputerze.

Co instaluje MSSQLLocalDB, a co Aktualizuje Jeśli wcześniej zainstalowano LocalDB v12.0 (przy użyciu SSDT w ramach VS2015 RTM lub Update 1), będzie on podłączony do & rozpoczęła MSSqlLocalDB. W związku z tym utworzyła instancję jako wersję 12.0.

Jeśli nigdy nie uruchamiasz tej instancji wcześniej (np. Przykład twojego kolegi), to przy pierwszym uruchomieniu będzie ona uruchamiana z wersji LocalDB v13.0, a zatem otrzymasz wersję v13.0 jako wersję instancji.

O ile mi wiadomo, w żadnym momencie nie zostanie zaktualizowany z wersji V12.0 do wersji 1.3.0.

Czy wersja MSSqlLocalDB ma znaczenie? To zależy. Dla większości testów rozwój ad hoc to naprawdę nie ma znaczenia.

Jeśli zależy Ci na wersji, na przykład jeśli tworzysz pliki .bak z pliku mdf do użytku aplikacji, powinieneś użyć interfejsów API LocalDB do utworzenia konkretnej wersji SQL. Wystarczy pobrać odpowiednią wersję MSI, zainstalować, & użyć flagi -version podczas tworzenia instancji za pośrednictwem interfejsu API lub command line. Może tak być również w przypadku korzystania z formalnej operacji publikowania SSDT zamiast wdrażania F5, ale użycie opcji "Zezwalaj na niezgodną platformę" powinno działać dobrze, aby obejść.