Почему я получаю сообщение "Не удается подключиться к серверу - ошибка, связанная с сетью или конкретным экземпляром"?

При попытке подключения к SQL Server появляется следующая ошибка:

Не удается подключиться к 108.163.224.173.

Связанный с сетью или произошла ошибка конкретного экземпляра при установлении соединения с SQL Server.

Сервер не найден или недоступен. проверить что имя экземпляра верное и что SQL Server настроен на разрешить удаленные подключения.

(поставщик: поставщик именованных труб, ошибка: 40 - Не удалось открыть соединение с SQL Server) (Microsoft SQL Server, Ошибка: 1326)

Эта ошибка возникает, когда я пытаюсь настроить мою базу данных на gridview в Visual Studio 2010. Я не понимаю, как отладить эту ошибку.

Как бы вы отлаживали эту ошибку? Какие шаги я должен предпринять, чтобы определить, что действительно происходит здесь, в дополнение к тому, что указано в сообщении об ошибке?

Ответ 1

Я нашел следующие полезные советы:

  • Убедитесь, что ваш механизм базы данных настроен на прием удаленных подключений:

    • Пуск > Все программы > SQL Server 2005 > Инструменты настройки > Конфигурация поверхности SQL Server
    • Нажмите "Конфигурация поверхности для служб и подключений"
    • Выберите экземпляр, у которого возникла проблемa > Механизм базы данных > Удаленные подключения
    • Включение локальных и удаленных подключений
    • Перезапуск экземпляра
  • Возможно, вам понадобится создать исключение на брандмауэре для экземпляра и порта SQL Server, который вы используете:

    • Пуск > Выполнить > Firewall.cpl
    • Перейдите на вкладку исключений
    • Добавьте sqlservr.exe(обычно находится в C:\Program Files (x86)\Microsoft SQL Server\MSSQL.x\MSSQL\Bin, проверьте установки для фактического пути к папке) и порта (по умолчанию 1433)
    • Проверьте также строку подключения
  • Проверьте, правильно ли запущены и запущены службы SQL-сервера:

    • Перейдите во все программы > Microsoft SQL Server 2008 > Средства настройки > Диспетчер конфигурации SQL Server > Службы SQL Server
    • Убедитесь, что статус службы SQL Server запущен.

    Кроме того, убедитесь, что ваш удаленный сервер находится в одной сети. Запустите sqlcmd -L, чтобы убедиться, что ваш сервер включен в список вашей сети.

  • Включить TCP/IP в конфигурации SQL Server

    Когда два или более SQL-сервера подключены по сети, они выполняют все коммуникации с использованием TCP/IP. Стандартный порт установки SQL Server - 1433. Этот порт можно изменить с помощью диспетчера конфигурации SQL Server. Для подключения SQL Server необходимо включить TCP/IP.

    • Перейти ко всем программам → Microsoft SQL Server 2008 → Инструменты настройки → Диспетчер конфигурации SQL Server → Выберите TCP/IP
    • Щелкните правой кнопкой мыши по TCP/IP → Нажмите "Включить"

    Необходимо перезапустить службы SQL Server, чтобы все изменения вступили в силу. Щелкните правой кнопкой мыши и перейдите к свойствам меню, чтобы выбрать местоположение, в котором можно изменить порт по умолчанию для SQL Server.

Ответ 2

Я получил решение для меня:

Откройте "Диспетчер конфигурации SQL Server"

Теперь нажмите "Конфигурация сети SQL Server" и нажмите "Протоколы для имени"

Щелкните правой кнопкой мыши на "TCP/IP" (убедитесь, что он включен) Нажмите "Свойства"

Теперь выберите вкладку "IP-адреса" - и - перейдите к последней записи "IP All"

Введите "TCP-порт" 1433.

Теперь Перезапустить "SQL Server.Name." используя "services.msc" (winKey + r)

Будет работать...

Ответ 3

Добавление моего усиленного комментария в качестве ответа со скриншотами.

Я потратил много времени на это, наконец, что сработало для меня:

1) Откройте Sql Server Configuration Manager Конфигурация сети SQL Server Протоколы для < (INSTANCE) > - → TCP/IP (дважды щелкните по нему).

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

2) Выберите → IP-адреса (вкладка).

3) Перейдите к последней записи IP All и укажите TCP-порт 1433.

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

4) Нажмите Win+R и введите services.msc.

5) Теперь перезапустите SQL Server < (INSTANCE) > .

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

После этого проблема решена!

Ответ 4

Я решаю эту проблему, открыв Службы, затем запустив службу Sql Server (Sqlexpress).

сервисное изображение

Ответ 5

Эта ошибка в основном возникла, когда служба SQL остановлена. Необходимо перезапустить службу. Чтобы перейти в это окно, вам необходимо выполнить поиск таких сервисов, как this- enter image description here

Затем найдите SQLSERVER (MSSQLSERVER) и перезапустите службу.

enter image description here

Надеюсь, это сработает.

Ответ 6

Нажмите window + R (Run window Open) и в окне запуска введите "services.msc", и откройте новые службы, найдите SQL SERVER с именем экземпляра в моем случае это SQL SERVER(SQLEXPRESS), затем запустите эту службу и попробуйте снова, она работает и для меня. Надеюсь, она также работает для вас.enter image description here

Ответ 7

Если вы можете использовать Express Edition:

Добавьте "\SQLEXPRESS" после имени вашего сервера

например, "MY-SERVER\SQLEXPRESS"

enter image description here

Ответ 8

У меня была такая же ошибка, когда я захотел запустить мой проект WinForms (включая работу с базой данных SQL Server и отлично работающую на моем ПК) на другом ПК. Проблема была в брандмауэре Windows на моем ПК. Я решил это, добавив два правила. Это вся процедура, как разрешить SQL Server через брандмауэр Windows:

  • Откройте "Выполнить" и введите services.msc
  • Найти службу для SQL Server (имя экземпляра) и SQL Server Browser. Один за раз, щелкните правой кнопкой мыши, выберите "Свойства", скопируйте путь к файлу exe.
  • Затем откройте firewall.cpl, щелкните разрешение приложения или добавьте правило, добавьте ранее скопированный путь (необходимо выполнить процедуру), проверьте Домен и Частный, снимите флажок "Публиковать".

Это ссылка YouTube, где вы можете увидеть эту процедуру: Разрешить SQL Server через брандмауэр Windows

Ответ 9

Если ни одно из вышеперечисленных решений не работает (ничего не работает для меня), просто перетащите свой компьютер, и вы сможете подключиться к вашему серверу sql (localhost).

Ответ 10

Сделав все, упомянутое здесь:
http://blog.sqlauthority.com/2009/05/21/sql-server-fix-error-provider-named-pipes-provider-error-40-could-not-open-a-connection-to-sql- server-microsoft-sql-server-error/ Все еще не работает для меня.

Шаги работали для меня:

Start > Run > cmd > sqlcmd -L

Он предложит вам имя сервера. Убедитесь, что имя этого сервера совпадает с именем, к которому вы пытаетесь подключиться, в поле CONNECT TO SERVER студии управления SQL.

Я сделал эту глупую ошибку, я продолжаю использовать MSSQLSERVER, используя это имя сервера.

Надеюсь, это поможет людям, которые делают глупую ошибку, как я.

Благодарю.

Ответ 11

Я использую SQL Server 2016 и Window 10.

enter image description here

Прежде всего, нужно разрешить удаленное подключение к SQL Server. Я сделал, чтобы ввести sqlservermanager13.msc в меню "Пуск", чтобы открыть диспетчер конфигурации SQL Server. Убедитесь, что статус TCP/IP включен. enter image description here

Проверьте номер своего TCP-порта, дважды щелкните имя протокола TCP/IP. Обычно по умолчанию это 1433.

enter image description here

Следующие процедуры настраивают брандмауэр Windows с помощью оснастки "Брандмауэр Windows с расширенной безопасностью" (MMC). Брандмауэр Windows с расширенной безопасностью настраивает только текущий профиль.

Чтобы открыть порт в брандмауэре Windows для доступа к TCP

  1. В меню "Пуск" выберите "Выполнить", введите "WF.msc" и нажмите "ОК".
  2. В брандмауэре Windows с расширенной безопасностью в левой панели щелкните правой кнопкой мыши Правила входящих сообщений и выберите Новое правило в панели действий.
  3. В диалоговом окне "Тип правила" выберите "Порт" и нажмите "Далее".
  4. В диалоговом окне "Протокол и порты" выберите TCP. Выберите "Определенные локальные порты", а затем введите номер порта экземпляра Database Engine, например 1433 для экземпляра по умолчанию. Нажмите кнопку "Далее.
  5. В диалоговом окне "Действие" выберите "Разрешить подключение" и нажмите "Далее".
  6. В диалоговом окне "Профиль" выберите любые профили, описывающие среду подключения к компьютеру, когда вы хотите подключиться к механизму базы данных, а затем нажмите "Далее".
  7. В диалоговом окне "Имя" введите имя и описание этого правила и нажмите "Готово".

Другое дело настроить.

Чтобы открыть доступ к SQL Server при использовании динамических портов

  1. В меню "Пуск" выберите "Выполнить", введите "WF.msc" и нажмите "ОК".
  2. В брандмауэре Windows с расширенной безопасностью в левой панели щелкните правой кнопкой мыши Правила входящих сообщений и выберите Новое правило в панели действий.
  3. В диалоговом окне "Тип правила" выберите "Программа" и нажмите "Далее".
  4. В диалоговом окне "Программа" выберите "Путь к этой программе". Нажмите "Обзор" и перейдите к экземпляру SQL Server, к которому вы хотите получить доступ через брандмауэр, и нажмите "Открыть". По умолчанию SQL Server находится в папке C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe. Нажмите кнопку "Далее.
  5. В диалоговом окне "Действие" выберите "Разрешить подключение" и нажмите "Далее".
  6. В диалоговом окне "Профиль" выберите любые профили, описывающие среду подключения к компьютеру, когда вы хотите подключиться к механизму базы данных, а затем нажмите "Далее".
  7. В диалоговом окне "Имя" введите имя и описание этого правила и нажмите "Готово".

Взгляните на Microsoft doucmentation. Настройте брандмауэр Windows для доступа к базе данных.

Ответ 12

У меня возникла одна и та же проблема, и проблема заключалась в том, что у меня было несколько проектов в решении (Web и Droid), и даже если Default project был выбран в Package Manager Console, он использовал строку подключения из Droid проект:

PM> update-database -Verbose
Using StartUp project 'Droid'. <-- DROID
Using NuGet project 'Web'. <-- WEB
Specify the '-Verbose' flag to view the SQL statements being applied to the target database.
<!-- BAD TARGET DATABASE -->
Target database is: 'DefaultConnection' (DataSource: .\SQLEXPRESS, Provider: System.Data.SqlClient, Origin: Convention).
System.Data.SqlClient.SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)
   [REMOVED TEXT]
ClientConnectionId:00000000-0000-0000-0000-000000000000
Error Number:-1,State:0,Class:20
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

После установки Startup Project в Web и Default project в Package Manger Console я получил его для работы.

Ответ 13

Вы можете протестировать следующие методы.

  • а

    • Проверьте строку подключения проекта.
  • б

    • Перейдите в сервисы и перезапустите экземпляр SQLServer.
  • с

    • Откройте 'Диспетчер конфигурации SQLServer'
    • На левой панели выберите "Конфигурация сети SQLServer" и расширьте ее
    • Выберите "Протоколы для MSSQLServer"
    • На правой панели dbl нажмите "TCP/IP"
    • На вкладке "Протокол" установите "Включено" в "Да"
    • На вкладке "IP-адреса" прокрутите вниз.
    • В "IPAll" установите "TCP-порт" на 1433
  • д
    • Откройте 'Брандмауэр с расширенной безопасностью'
    • На правой вкладке выберите "Входящие правила"

В средней вкладке найдите запись, в которой "local Port" равен 1433. Если вы не можете найти ее, попробуйте создать ее со следующими уровнями

  • В меню "Пуск" выберите "Выполнить", введите "WF.msc" и нажмите "ОК"
  • В левой панели нажмите "Брандмауэр Windows с повышенной безопасностью"
  • На правой панели щелкните правой кнопкой мыши "Входящие правила", а затем нажмите "Новое правило"
  • В диалоговом окне "Тип правила" выберите "Порт", а затем нажмите "Далее"
  • В диалоговом окне "Протокол и порты" выберите "TCP" и выберите "Конкретные локальные порты", а затем введите номер порта 1433, нажмите "Далее"
  • В диалоговом окне "Действие" выберите "Разрешить подключение" и нажмите "Далее"
  • В диалоговом окне "Профиль", проверяющем Домен, Частный и Общественный, Затем нажмите "Далее"
  • В диалоговом окне "Имя" введите "SQL 1433 Port" и описание описания для описания. Затем нажмите "Готово"
  1. Затем в средней вкладке дважды щелкните найденный элемент (экземпляр) или созданный вами элемент имени "SQL 1433 Port".
  2. Выберите вкладку "Область" в открывшемся диалоговом окне (Свойства SQL Server)
  3. На локальном ПК Перейдите на google.com в свой браузер и выполните поиск "Мой IP".
  4. затем копия вашего IP-адреса
  5. Перейдите на удаленный сервер и в диалоговом окне "Свойства SQL Server" на вкладке "Область" в "Удаленный IP-адрес" выберите "Эти IP-адреса" и нажмите кнопку "Добавить"
  6. В открывшемся диалоговом окне (IP-адрес) выберите "Этот IP-адрес или подсеть" и вставьте свой "IP", нажмите кнопку "ОК".

Ответ 14

Мне нужно запустить службу SQL Server Browser в диспетчере конфигурации SQL Server. Установка не может обнаружить вновь созданный сервис без этого.

Ответ 15

Хотя вышеупомянутые решения должны работать в 90% случаев, но если вы все еще читаете этот ответ!!! Вероятно, вы пытаетесь подключиться к другому серверу, чем предполагалось. Это может быть связано с конфигурационным файлом, указывающим на другой сервер SQL, чем на тот сервер, на который вы пытаетесь подключиться.

Случилось мне по крайней мере.

Ответ 16

Я попробовал все другие ответы по этому вопросу, и некоторые, если не все, вероятно, сыграли определенную роль в том, чтобы заставить это работать для меня, но я все еще не мог подключиться к БД удаленно. Я использовал SQL Server на Azure VM.

В конце концов я вспомнил, что у VM есть конечные точки, которые контролируются прокси-сервером Azure, поэтому я пошел на Azure Portal и добавил 1433 в качестве доступной конечной точки, и я мог подключиться к моему экземпляру SQL.

Надеюсь, это поможет кому-то, кто пробовал все остальные ответы и до сих пор не повезло!

Ответ 17

Я перешел с рабочего ноутбука на Windows 7 на рабочий ноутбук в Windows 10. Я успешно использовал SSMS2016 в Windows 7.

То же самое относится к SSMS2012 или SSMS2016. Мой доступ к серверам с 10 окнами, использующими проверку подлинности Windows, остался прежним. Я могу проверить это с другого сервера. Однако 2 из 10 серверов не будут подключаться с моего ноутбука. Оба были ms sql server 9, но я мог подключиться к другим базам данных SQL Server.

Решение было добавить правило брандмауэра (используя брандмауэр Windows с повышенной безопасностью).

Создать правило ввода для каждой SSMS например, C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Ssms.exe

Я не эксперт в сети, поэтому я не включил подробности, но надеюсь, что он укажет вам в правильном направлении.


Ошибка msg (правило предварительного брандмауэра) "При установлении соединения с SQL Server возникла связанная с сетью или конкретная ошибка экземпляра. Сервер не был найден или недоступен. Убедитесь, что имя экземпляра верное и что SQL Server настроен на разрешение удаленных подключений (поставщик: SQL Network Interfaces, ошибка: 26 - Ошибка определения местоположения сервера/экземпляра) (поставщик данных Net SqlClient)"

Ответ 18

Это решение также решает как сетевую ошибку, так и службу, стоящую за сервером SQL

Я ответил на аналогичный вопрос здесь, вам нужно проверить другие open Run type-> services.msc - в разделе сервисы → sort by stopped вы увидите кучу остановленных служб SQL Right click and start

Для начала - есть 4 проблемы, которые могут вызывать распространенные ошибки подключения к серверу LocalDb SqlExpress Sql SQL Network Interfaces, error: 50 - Local Database Runtime error occurred, прежде чем начать, вам необходимо переименовать v11 или v12 в (localdb)\mssqllocaldb

Я обнаружил, что самое простое - это сделать ниже - я приложил фотографии и шаги для помощи.

Сначала проверьте, какой экземпляр вы установили, это можно сделать, проверив реестр и , запустив cmd

  1. . cmd> Sqllocaldb.exe i
  2. cmd> Sqllocaldb.exe s "whicheverVersionYouWantFromListBefore" если этот шаг не удался, вы можете удалить с помощью опции d cmd> Sqllocaldb.exe d "someDb"
  3. cmd> Sqllocaldb.exe c "createSomeNewDbIfyouWantDb"
  4. cmd> Sqllocaldb.exe start "createSomeNewDbIfyouWantDb"

SqlLOCALDb_edited.png

Ответ 19

Вы можете проверить статус службы MS SQL Server 2014. В Windows 7 вы можете это сделать:

  1. Перейдите к поиску и введите "Менеджер конфигурации SQL Server 2014
  2. Затем нажмите "Сервис SQL Server" в меню слева
  3. Проверьте экземпляр статуса службы SQL Server, если он остановлен или запущен
  4. Если он остановлен, пожалуйста, измените статус на запуск и войдите в SQL Server Management Studio 2014

Ответ 20

Резюме

Чтобы устранить эту проблему, возникающую при запуске локального приложения или удаленной базы данных, используйте диспетчер конфигурации SQL Server, чтобы добавить псевдоним для удаленной базы данных.

подробности

Недавно я столкнулся с этой проблемой при переходе с Windows 7 на ноутбук с Windows 10. Я запускал локальную среду разработки и среды выполнения, обращаясь к нашей базе данных Dev на удаленном сервере. Мы получаем доступ к базе данных Dev через настройку псевдонима сервера с помощью утилиты клиентской сети SQL Server (cliconfg.exe). Убедившись, что псевдоним был правильно настроен как в 64-разрядной, так и в 32-разрядной версиях утилиты, и что сервер базы данных был доступен с нового ноутбука через SSMS, я все еще получил ошибку, обнаруженную OP (а не IP-адресом OP, курс).

Для добавления псевдонима для удаленного сервера базы данных Dev необходимо было использовать диспетчер конфигурации SQL Server. Исправлены ошибки.

enter image description here

Ответ 21

Почему эта ошибка настолько скучна и шумна, просто потому, что она может возникать в различной ситуации.

Я сделал здесь все объяснения и все еще сосал. Поэтому убедитесь, что вы сделали то же, что и я, прежде чем просматривать вниз.

Возможно, я не смогу мгновенно исправить ситуацию с моментом, , но я могу указать направление или мышление на u (тот, кто, наконец, спустится сюда). Я начал задумываться над ошибкой моей запущенной программы, возникшей после того, как я убедился, что имя экземпляра явно правильно, и установите мою базу данных, чтобы позволить удаленное управление, следуя приведенным выше методам. После этого я подозревал, что что-то не так происходит в моем фрагменте кода SQL-соединения.

Решение моей проблемы:

  • Проверьте мою функцию sqlconnection

  • Нажмите, чтобы посмотреть его конфигурацию

  • Новое соединение

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

  • Выберите имя сервера ur

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

Это работает для меня с размышлением о том, что именно происходит в процессе соединения. Надеюсь, что мое мышление приведет вас к ошибке ура.

Ответ 22

Моя проблема началась, когда я попытался изменить сервер с IIS Express на Локальный IIS (при использовании LocalDB).

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

Я использовал LocalDB (для целей dev), и когда я перешел из Local IIS в IIS Express, Visual Studio переключила мой источник данных с Data Source = (LocalDb)\MSSQLLocalDB на Источник данных =.\SQLEXPRESS

Неверная строка подключения

<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\SurveyTestsDB.mdf;Initial Catalog=SurveyTestsDB;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient" />

Исправить строку подключения

<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SurveyTestsDB.mdf;Initial Catalog=SurveyTestsDB;Integrated Security=True" providerName="System.Data.SqlClient" />

Надеюсь, что это поможет кому-то там.

Ответ 23

Наряду с попыткой всего, как предлагает Тео Чун Вэй Брайан, убедитесь, что вы также ссылаетесь на правильное имя сервера/экземпляра в строке подключения.

Если вы используете краткую форму имени хоста/экземпляра на сервере базы данных или в файле web.config, убедитесь, что вы используете полное доменное имя (FQDN)/экземпляр

Кроме того, чтобы проверить подключение с сервера, на котором отсутствует клиент SQL Server,

- > создать текстовый файл и изменить его расширение на .udl

- > Щелкните правой кнопкой мыши файл, и вы увидите вкладку подключения.

- > Введите имя сервера и введите информацию для проверки соединения с сервером базы данных.

Надеюсь, что это поможет.

Ответ 24

Если вы вдруг столкнулись с этой ошибкой, произнесите в рабочей среде и ничего не изменилось, попробуйте следующие 4 элемента в следующем порядке, чтобы узнать, исправляется ли она.

  • перезапустите службу сервера sql.
  • перезапустите службу (скажем, IIS), которая вызывает сервер sql. (проблема, вероятно, здесь, если время между запуском вызова службы на SQL-сервер и время, в течение которого вы получаете ошибку ответа, очень короткое (около одной или двух секунд).
  • перезапустить сервер SQL Server включен.
  • перезапустите сервер, на который включена вызывающая служба.

Ответ 25

Когда я столкнулся с этой ошибкой в ​​Visual Studio,

"При установлении соединения с SQL Server возникла связанная с сетью или конкретная ошибка экземпляра. Сервер не был найден или недоступен. Убедитесь, что имя экземпляра верное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик Named Pipes, ошибка: 40 - не удалось открыть соединение с SQL Server)"

... это было во время выполнения следующего кода С#, который пытался получить данные моего SQL Server, чтобы отобразить его в сетке. Разрыв произошел именно в строке, которая говорит connect.Open():

        using (var connect = Connections.mySqlConnection)
        {
            const string query = "SELECT Name, Birthdate, Narrative FROM Friends";
            using (var command = new SqlCommand(query, connect))
            {
                connect.Open();
                using (var dr = command.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        // blah
                    }
                }
            }
        }

Это было необъяснимо, потому что SQL-запрос был очень простым, у меня была правильная строка подключения, и сервер базы данных был доступен. Я решил запустить сам SQL-запрос вручную в SQL Management Studio, и он прошел отлично и дал несколько записей. Но в результатах запроса было одно: в тексте типа "varchar (max) внутри таблицы" Друзья "был некорректно закодирован HTML-текст (в частности, некоторые кодированные символы комментариев сортировки <!--, помещенные в данные столбца" Повествование ")). Строка подозрительных данных выглядела так:

Name    Birthdate    Narrative
====    =========    ============== 
Fred    21-Oct-79    &lt;!--HTML Comment -->Once upon a time...

Обратите внимание на кодированный HTML-символ "&lt;", который означал "<" персонаж. Как-то это пробилось в базу данных, и мой код на С# не смог его забрать! Он провалился каждый раз прямо на линии connect.Open()! После того, как я вручную отредактировал эту одну строку данных в таблице базы данных "Друзья" и поместил в декодированный "<" характер, все сработало! Вот как выглядела бы эта строка:

Name    Birthdate    Narrative
====    =========    ============== 
Fred    21-Oct-79    <!--HTML Comment -->Once upon a time...

Я отредактировал одну плохую строку, которую я использовал, используя этот простой оператор UPDATE ниже. Но если у вас было несколько оскорбительных строк закодированного HTML, вам может понадобиться более сложная инструкция UPDATE, которая использует функцию REPLACE:

UPDATE Friends SET Narrative = '<!--HTML Comment -->Once upon a time...' WHERE Narrative LIKE '&lt%'

Итак, мораль этой истории (по крайней мере, в моем случае), дезинфицирует ваш контент HTML, прежде чем хранить его в базе данных, и вы не получите эту загадочную ошибку SQL Server в первую очередь! (Ну, правильная дезинфекция/декодирование вашего HTML-контента является предметом другого обсуждения, достойного отдельного поиска StackOverflow, если вам нужна дополнительная информация!)

Ответ 26

Важное значение имеет расположение тегов Xml в Web.config.

Первый

<configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>

После

<connectionStrings>
  <add name="SqlConnectionString" connectionString="Data Source=.; Initial Catalog=TestDB; Trusted_Connection=True;" providerName="System.Data.SqlClient" />
</connectionStrings>

Ответ 27

Попробуйте добавить , и номер порта (как ,1433) до конца строки подключения.

Ответ 28

Эта ошибка возникает, когда ваш экземпляр сервера sql stopped.

Перейти ко всем программам > SQL Server > Инструменты настройки > МЕНЕДЖЕР КОНФИГУРАЦИИ SQL SERVER

затем нажмите "СЕРВЕРНЫЕ УСЛУГИ SQL", появится список экземпляров, выберите экземпляр и нажмите значок воспроизведения на верхней панели инструментов, надеюсь, что это поможет.

этот ответ очень поздний (но лучше поздно, чем никогда;)

Ответ 29

Я решил эту проблему, установив проект, который использует Entity Framework в качестве стартового проекта, а затем запустил команду "update-database".

Ответ 30

Если вы сталкиваетесь с этим при отладке в Visual Studio, убедитесь, что путь сборки проекта указывает на локальный диск или выполните эти шаги предоставить разрешения для сетевой папки.