BCP:Не удалось разрешить параметры сортировки на уровне столбцов
-
19-09-2019 - |
Вопрос
Запускаю это:
bcp MyDb.dbo.uvwMyView out "c:\Test.txt" -SMyServer -T -c
Я получаю эту ошибку:
SQLState = S1000, NativeError = 0
Error = [Microsoft][SQL Native Client]Unable to resolve column level collations
Поиск в Google находит множество возможных решений, ни одно из которых не работает для меня и не работало ни для кого из людей, для которых они были предложены.Как и в других случаях, опубликованных в Интернете, представление не вызывает проблем, когда я выбираю из него в Management Studio, и результаты выглядят нормально (и не содержат специальных символов, я проверил).Один текстовый столбец в результатах имеет параметры сортировки SQL_Latin1_General_CP1_CS_AS
.Я перепробовал несколько вариантов bcp, но безрезультатно:-w, -CRAW, -COEM, -C850, -C437.
Я использую SQL Server 2005.
Решение
Отбрасывание вида и воссоздание его исправило проблему. К сожалению, это не объясняет, как проблема произошла в первую очередь, или как ее предотвратить в будущем. Это не удовлетворительное решение, поэтому, если кто -то знает лучший ответ, мне все еще очень интересно услышать его.
Другие советы
Я знаю, что на этот вопрос уже отвечает, но я добавлю свои 2 цента ... Я столкнулся с этим сегодня, я добавил печатную @VarableName, и в исследованиях я нашел это:
Удаление отпечатка исправило мою проблему.
- Вы можете попытаться удалить подключиться к серверу и запустить BCP без параметра -s оттуда.
- Если сопоставление сервера отличается от базы данных или сбора столбцов, попробуйте создать файл формата и явно указать его в BCP.
Я использовал инструменты SQL 2005 для работы с базой данных SQL 2008 R2, и я получил ту же ошибку при использовании datetimeoffset
поля.
Попробуй это:
declare @sql varchar(8000)
select @sql = 'bcp "select * from database_name.dbo.table_name" queryout H:\Tempfile_DTU_proc\test1.csv -c -t, -T -S' + @@servername
exec master..xp_cmdshell @sql