Excel: Як підключитися до sqlserver localDB


8

Я створив LocalDB, з яким я можу працювати в MS sqlserver студії управління 2014, linqpad та візуальній студії 2013.

Ось частина діалогового вікна "Властивість з'єднання" в SSMS, яка показує ім'я сервера: введіть тут опис зображення

Я хотів би мати можливість підключитися до цієї бази даних в межах excel. Проблема полягає в тому, що "Майстер підключення даних" в Excel не вдається підключитися.

Тут я набрав те саме ім’я сервера, яке було вказано з "властивостей з'єднання" в SSMS ....

введіть тут опис зображення

І ось помилка, яку я отримую ... введіть тут опис зображення

Запитання:

  • Чи може Excel взагалі підключитися до localDB? Я знаю, це МОЖЕ підключитися до баз даних sql-сервера. Чи існує якесь обмеження щодо LocalDB, яке перешкоджає цьому? Я подумав, що вся суть LocalDB полягає в тому, щоб дозволити розробку без зусиль зі створення окремої бази даних.

  • Чи є альтернативний спосіб підключення? Або ім'я мого сервера вимагає деяких дратівливих змін?


1
Спробуйте .\mssqllocaldb, або localhost\mssqllocaldb, або <comptuersIPAddress>\mssqllocaldb. Яке ім’я сервера ви використовували для своїх (успішних) підключень VS та Linqpad?
Ƭᴇcʜιᴇ007

@ Ƭᴇcʜιᴇ007, дякую, я копіюю / вставляю саме те ім’я сервера, яке було знайдено, коли я відкрив діалогове вікно властивостей для бази даних в SSMS. Немає продовження на всіх трьох прикладах. Ім'я сервера, який працює на linqpad та SSMS, саме це ... (localdb) \ mssqllocaldb
Angelo

Відповіді:


6

Який дармовий ПІТА!

Мені вдалося змусити його працювати за допомогою "Майстра підключення до даних", виконуючи ці кроки ....

  1. Виберіть "Інше / розширене" з "Майстра з'єднання даних", а потім натисніть "Далі" . Я думав, що localDB, створений експресом sqlserver, піде як "SQL Server". Мабуть, ні! хоча я не можу зрозуміти, чому.

введіть тут опис зображення

  1. Виберіть "Провідний клієнт SQL Server 11.0" як постачальник. Гаразд, я просто НЕ вибрав "SQL Server" у попередній вкладці. Також у мене трапляється версія 12 експрес-сервера sql, і в списку немає "12" - можливо, це суворо стосується клієнтської версії, з тонким наслідком, що клієнт 11 може підключитися до сервера 12? Ще один пізнавальний виріз з паперу.

введіть тут опис зображення

  1. Введіть те саме ім’я сервера, яке працює в SSMS або linqpad. Виберіть інтегральну безпеку для Windows. Тестове підключення зараз працює, і можна вибрати базу даних і скинути таблицю в excel.

введіть тут опис зображення

Зробити це не складно, але, здається, не існує жодного логічного потоку до нього, вам доведеться махати навколо, поки щось не клацає.


Шановний, ви підключаєтесь до SQL Server 2014, який поставляється разом SQLNCLI12, і на знімках екрана ви вибрали "Native Client 11", який є SQLNCLI11, і на деяку причину у вас немає "Native Client 12", який найкраще виглядає за 2014 рік.
tbc

1

Це рядок підключення (SQLServer 2012 / Excel 2013):
Server=(LocalDB)\MSSQLLocalDB; Integrated Security=true ;AttachDbFileName={mdf file full path}

О, на моєму комп’ютері мені довелося користуватися ;Trusted_Connection=Yes, це може не мати сенсу, оскільки і мій ноутбук, і ПК мають точну версію SQLServer і Excel.


Редагувати

Я не можу відтворити помилку (я навіть встановив SQL Server 2014 на VM і вона все ще працює). Єдиний варіант, який ви можете додати і може допомогти вам - Provider=SQLNCLI11;АБО Provider=SQLNCLI12;ви можете дізнатися, яка версія встановлена, запустивши sqllocaldb vв командному рядку.
Це призвело б до чогось такого типу:Microsoft SQL Server 2014 (12.0.2000.8)


спасибі, але це все ще дає помилку. Мені довелося видалити вашу "server =" частину, щоб уникнути отримання "parseConnectParams ()" у діалоговому вікні помилок. Коли я це зробив, це дало ту саму помилку, що і я раніше.
Анджело

@Angelo Я оновив свою відповідь, будь ласка, до результату, як тільки ви спробуєте.
tbc
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.