Sqlcmd - подключиться к локальному экземпляру SQLEXPRESS

Я хочу запустить пакет .sql script, чтобы удалить записи из нескольких таблиц из CMD-окна. Итак, для этого я пытаюсь подключиться к локальному экземпляру SQLEXPRESS, используя следующую команду -

sqlcmd -e -s\SQLEXPRESS

Однако я не могу подключиться и получить следующую ошибку:

'Named Pipes Provider: Could not open a connection to SQL Server [2]'.

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

Кто-нибудь может посоветовать.

P.S. Я использую проверку подлинности Windows, чтобы подключиться к SQLEXPRESS, когда я перехожу к подключению с помощью Mgmt Studio.

Ответ 1

Извините за поздний ответ (просто наткнулся на ваш вопрос при поиске чего-то несвязанного), но мне кажется, что вы просто используете неправильный аргумент в своих аргументах:

sqlcmd -E -S .\SQLEXPRESS

-S означает "сервер", тогда как -S означает "colseparator" (и аналогичным образом нижний регистр e означает эхо, а не интегрированный auth)

Ответ 2

Возможно ли, что '.' отсутствует в вашей команде?

sqlcmd -e -S .\SQLEXPRESS

EDIT:

Посетите эту страницу. Там вы заполняете инструкции для подключения к вашему серверу. Сначала проверьте код ошибки Hresult в сообщении об ошибке.

Я тоже сам пробовал, потому что я мог подражать вашей проблеме. Я должен был выполнить следующие шаги, чтобы связаться с sqlcmld

  • Перейти к Все программы \Microsoft SQL Server\Средства настройки\Конфигурация поверхности SQL Server
  • В службах и подключениях выберите SQLEXPRESS\Database Engine\Удаленные подключения
  • Проверить локальные и удаленные подключения и использовать как TCP/IP, так и именованные каналы. Нажмите "ОК".
  • Перезапустите службу базы данных.
  • Попробуйте подключиться к серверу:

    sqlcmd -Snp:\\.\pipe\MSSQL$SQLEXPRESS\sql\query