Stworzyłem LocalDB, z którym mogę pracować w MS sqlserver management studio 2014, linqpad i visual studio 2013.
Oto część okna dialogowego „właściwości połączenia” w SSMS, która pokazuje nazwę serwera:
Chciałbym móc połączyć się z tą bazą danych z poziomu programu Excel. Problem polega na tym, że „Kreator połączenia danych” w programie Excel nie może się połączyć.
Tutaj wpisałem tę samą nazwę serwera, co podano w „właściwościach połączenia” w SSMS ....
A oto błąd, który dostaję ...
Pytania:
Czy Excel może w ogóle łączyć się z localDB? Wiem, że MOŻE połączyć się z bazami danych serwera SQL. Czy jest jakieś ograniczenie dotyczące LocalDB, które temu zapobiega? Myślałem, że sednem LocalDB było umożliwienie rozwoju bez wysiłku tworzenia samodzielnej bazy danych.
Czy istnieje alternatywny sposób połączenia? Czy też nazwa mojego serwera wymaga irytujących modyfikacji?
.\mssqllocaldb
, albolocalhost\mssqllocaldb
, albo<comptuersIPAddress>\mssqllocaldb
. Jakiej nazwy serwera użyłeś do (udanych) połączeń VS i Linqpad?Odpowiedzi:
Co za nieuzasadniona PITA!
Udało mi się sprawić, aby działał za pomocą „Kreatora połączeń danych”, wykonując następujące kroki ....
Nie jest to trudne, ale wydaje się, że nie ma w tym żadnego logicznego przepływu, musisz krążyć wokół, aż coś kliknie.
źródło
SQLNCLI12
ekranu wybierałeś „Native Client 11”, co oznaczaSQLNCLI11
, że z jakiegoś powodu nie masz „Native Client 12”, który wyróżnia się na 2014 rok.To jest ciąg połączenia (SQLServer 2012 / Excel 2013):
Server=(LocalDB)\MSSQLLocalDB; Integrated Security=true ;AttachDbFileName={mdf file full path}
Och, na moim komputerze, musiałem użyć
;Trusted_Connection=Yes
, to może nie mieć sensu, ponieważ zarówno mój laptop, jak i komputer PC mają uruchomione dokładnie takie same wersje SQLServer i Excel.Edytować
Nie mogę odtworzyć błędu (nawet zainstalowałem SQL Server 2014 na maszynie wirtualnej i nadal działa). Jedyną opcją, którą możesz dodać i która może ci pomóc, jest
Provider=SQLNCLI11;
LUBProvider=SQLNCLI12;
Możesz dowiedzieć się, która wersja jest zainstalowana, uruchamiając jąsqllocaldb v
w wierszu poleceń.To dałoby coś w rodzaju:
Microsoft SQL Server 2014 (12.0.2000.8)
źródło