Проблема подключения SQL Server 2016 LocalDb
Я создал приложение с файлом базы данных .mdf
(версия 13.00.4001).
Если я запускаю приложение на том же компьютере, где я его скомпилировал, все работает отлично. Но если я попытаюсь запустить его на втором компьютере с установленным SQL Server LocalDb 2016, он не будет работать и скажет, что SQL Server не может быть найден на компьютере.
В чем проблема? Я не могу понять почему.
А если я попытаюсь запустить приложение на ПК, где установлен SQL Server 2014 LocalDB и 2016 журнал говорит
Не может быть открыт, потому что это версия 852. Этот сервер поддерживает версию 782 и более раннюю. Путь понижения не поддерживается
На самом деле я не могу понять, почему существуют все эти проблемы.
Код, используемый для построения строки соединения:
"Data Source=(LocalDB)MSSQLLocalDB;AttachDbFilename=" +
Directory.GetCurrentDirectory() +
@"Dati.mdf; Integrated Security=True"
3 ответа:
Я решил свою проблему, удалив существующий экземпляр MSSQLLocalDB и повторно создав его с помощью этой командной строки
Sqllocaldb удалить MSSQLLocalDB
И
Sqllocaldb создать MSSQLLocalDB
И теперь все работает отлично.
Похоже, что вы пытаетесь переместить свой код с одной машины на другую, но вы не перемещаете свою базу данных. Это означает, что вам нужно будет создать новую базу данных на второй машине, а затем получить новую строку подключения, которая будет работать на второй машине.
Смотритездесь Инструкции по созданию базы данных, но Сначала установите SQL Server Management Studio (смотритездесь ). Вы, вероятно, захотите создать какой-то конфигурационный файл, чтобы установить новое соединение строку. Вот руководство по этой теме.
Версия 13.00.4001 соответствует SQL Server 2016 Service Pack 1. Когда вы пытаетесь восстановить / присоединить свою базу данных на другом компьютере, убедитесь, что там установлена не только та же версия, но и тот же SP / CU.
Чтобы проверить версию, вы можете подключиться к экземпляру и выдать:
Он даст вам всю необходимую информацию о сборке, выпуске, SP / CU, разрядности и т. д. об этом случае идет речь.print @@version;