sqlcmd не запускается - это проблема конфигурации? - PullRequest
7 голосов
/ 22 февраля 2011

Я пытаюсь использовать sqlcmd для выполнения некоторых сценариев SQL.

Использование тестовой команды с простым запросом, например:

sqlcmd -S HOSTNAME -d MYDATABASE -Q 'SELECT Names FROM Customers'

sqlcmd, по-видимому, не предпринимает никаких попытокподключитесь к серверу, как показано это сообщение:

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

Собственный клиент предположительно был установлен как часть установки SQL Server и, вероятно, правильно.Я на самом деле получаю это сообщение на любом компьютере с установленным SQL-сервером, пытающимся использовать sqlcmd, поэтому проблема не в том, что установка повреждена.

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

Требуется ли дополнительная настройка для использования sqlcmd?

Ответы [ 4 ]

16 голосов
/ 08 августа 2011

У меня была такая же ошибка. После долгих поисков и переустановки я проверил свой PATH на что-то не связанное. Поскольку программное обеспечение, над которым я работаю, прошло через MSDE, 2005 Express и теперь 2008 Express R2, в моем утверждении PATH были следующие записи:

c: \ Program Files \ Microsoft SQL Server \ 80 \ Tools \ Binn \; C: \ Program Files \ Microsoft SQL Server \ 90 \ Tools \ binn \; c: \ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn \

Я удалил 80 и 90 записей и перестал получать сообщение об ошибке. Я тестировал, и установка 2005 Express все еще отвечала на запись SQLCMD без проблем.

3 голосов
/ 30 июля 2014

Я встретил эту ошибку при запуске команды sqlcmd.Чтобы решить эту проблему, я удалил ненужные части переменной среды PATH и вставил следующее:

C:\Program Files\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\

Этот PATH предназначен для SQL Server 2012

1 голос
/ 12 февраля 2016

Я также получал эту ошибку с MS SQL Server 2014 .

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

Сначала убедитесь, что установлен Собственный клиент SQL Server . Как указано в MSDN , файлы bcp.exe и SQLCMD.exe должны находиться в следующем каталоге.

<Install Directory>\Client SDK\ODBC\110\Tools\Binn

Если файлов там нет, вы можете загрузить и установить клиент из центра загрузки Microsoft , используя ENU \ x86 \ sqlncli.msi или ENU \ x64 \ sqlncli.msi . MSSQL 2014 использует клиент 2012

Как только это будет сделано, вы сможете без проблем использовать SQLCMD.

Переменная окружения Path на моем компьютере содержит следующие записи:

C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn
C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\
C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\
C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\
0 голосов
/ 22 февраля 2011

Я знаю, что собственный клиент SQL работает правильно, поскольку vbscript смог выполнить запросы SQL к базе данных.

Нет, вы этого не делаете.Вы знаете только то, что НЕКОТОРЫЙ клиент работает, но не обязательно собственный клиент SQL.

Все дороги ведут в Рим http://www.connectionstrings.com/sql-server-2008 (проверьте список провайдеров), но одна из них заблокирована.

Просто выполните восстановление / изменение настроек из панели управления или установите другой экземпляр (убедитесь, что установлен собственный клиент), а затем удалите его снова.

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