Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 bcp не подключается если пароль польз. содержит символ %. - Login failed for user  [new]
m_kol
Member

Откуда:
Сообщений: 9
Реализовал передачу данных на другой сервер по слабому каналу через импорт\экспорт bcp, упаковку 7z и передача ftp. На девелоперской базе все работает.
Когда переношу на продакшен - bcp валится с ошибкой - Login failed for user.

Проблема в том что на продакшене используется сложный пароль пользователя со спецсимволами. bcp почему-то не понимает если в пароле есть символ - %.
Брал пароль в кавычки, не помогает.

bcp брал из дистрибутивов 2005 и 2008 sql.

Может кто встречался с такой проблемой?

Пример вызова:
bcp "SELECT 100" queryout "C:\test.dat" -n -CRAW -S "." -U "testuser" -P "some_password_with_%_symbol"


Простое решение - поменять пароль пользователя на продакшене довольно затратно реализовать. может быть есть какое-то более простое решение?
31 авг 14, 02:17    [16516953]     Ответить | Цитировать Сообщить модератору
 Re: bcp не подключается если пароль польз. содержит символ %. - Login failed for user  [new]
m_kol
Member

Откуда:
Сообщений: 9
Сам спросил, через 15 минут сам же и ответил :)

когда формировал строку запуска bcp, не учел что при вызове cmd файла одиночный символ % убирается. В итоге пароль отправлялся без этого символа. Результат - Login failed.

Как победить:
вместо одного символа % подставлять двойной символ %%.

В результате пароль из моего примера примет вид:
-P "some_password_with_%%_symbol"
31 авг 14, 02:35    [16516955]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить