Мой SQL Server Express, кажется, сошел с ума, иногда монтируя БД, а другие нет - PullRequest
1 голос
/ 27 ноября 2011

Я не уверен, что именно происходит, так как не могу установить строгую линейную корреляцию между событиями.Но ниже вы найдете мою строку подключения, иногда она работает, в других случаях, когда я открываю приложение / проект, который я создаю (без внесенных изменений), это не так и дает мне различные ошибки и причины.

<add name="EFDbContext"
     connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\EFDbContext.mdf;MultipleActiveResultSets=true;Integrated Security=True;User Instance=True"
     providerName="System.Data.SqlClient" />

Ошибки включают в себя:

Невозможно завершить операцию.Поставляемый SqlConnection не указывает начальный каталог.

или

, говоря, что у Amin-PC \ Admin нет прав доступа (я вошел в систему admin)

Такжекогда я пытаюсь добавить новое соединение, иногда мне сообщают, что у меня нет прав доступа или база данных уже существует, или просто добавляет ее нормально!

Я пытался явно запустить Visual Studio от имени администратора, и это, похоже, помогло сотказано в доступе к проблеме с БД.

По сути, я не знаю, что происходит, черт возьми.

Недавно начал с .net, и его было легко программировать для asv.net mvc framework доЯ начал взаимодействовать с базовой инфраструктурой asp.net, строками соединений, устаревшим (готовым к полудню) провайдером членства и т. Д.

И теперь не знаю, что происходит с выпуском SQL Server Express, который устанавливаетсядлинный с VS2010.

Ответы [ 2 ]

0 голосов
/ 27 ноября 2011

См. Примеры строк подключения к SQL Server здесь .

0 голосов
/ 27 ноября 2011

Моя рекомендация будет такова: поскольку у вас уже установлен экземпляр сервера (.\SQLEXPRESS) - присоедините ваши базы данных к экземпляру SQL Server Express, а затем используйте их под своим именем базы данных (вместо использования нестабильного метода AttachDbFileName=).).

Итак:

  • запустите вашу SQL Server Management Studio Express
  • найдите нужные файлы MDF
  • используйте Сервер> Подключить базу данных кприсоедините MDF / LDF к серверу - с этого момента дайте ему значимое имя
  • - используйте базу данных на сервере и не присоединяйте MDF на лету ....

Тогда ваша строка подключения будет выглядеть примерно так:

server=.\SQLEXPRESS;Database=YourEFDatabaseName;Integrated Security=True

Я считаю, что этот метод обычно намного более надежен и предсказуем - AttachdbFileName= и User Instance=true должны бытьпроще, но, как правило, более запутанно, чем что-либо еще ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...