Мне нужно экспортировать XML-данные, хранящиеся в ячейке таблицы, в файл xml.Экспорт данных XML, хранящихся в столбцах таблицы, в файлы xml
Я попытался запустить ниже запрос
USE [AdventureWorks2012]
GO
-- Save XML records to a file:
DECLARE @fileName VARCHAR(50)
DECLARE @sqlStr VARCHAR(1000)
DECLARE @sqlCmd VARCHAR(1000)
SET @fileName = 'D:\SQL_Queries\PersonAdditionalContactInfo.xml'
SET @sqlStr = 'select TOP 1 AdditionalContactInfo from AdventureWorks2012.Person.Person where AdditionalContactInfo IS NOT NULL'
SET @sqlCmd = 'bcp "' + @sqlStr + '" queryout ' + @fileName + ' -w -T'
EXEC xp_cmdshell @sqlCmd
как было предложено на https://sqlwithmanoj.com/2015/04/13/export-xml-column-data-to-a-file-xml/
После выполнения этого запроса я получаю ниже выхода к сетке
использования: BCP {dbtable | query} {in | | запрос | format} datafile
[-m maxerrors] [-f formatfile] [-e errfile] [-F firstrow] [-L lastrow] [-b batchsize] [-n родной тип] [-c тип персонажа] [ -w широкий символ type] [-N сохранить нетекстовый родной] [-V формат файла версии] [-q цитируется идентификатор] [-кодировщик кодовой страницы] [-t полевой терминатор] [-r строка терминатор] [-i inputfile] [-o outfile]
[-a packetsize] [-S имя сервера] [-U имя пользователя]
[-P пароль] [-T надежное соединение] [-v версия] [-R региональный enable] [-k сохранить значения null] [-E сохранить значения идентификатора] [-h "подсказки загрузки"] [-x генерировать файл формата XML] NULL
Но нет ни одного файла создается на месте 'D: \ SQL_Queries \'
Возможно, вы ищете неправильный 'D: \', SQL Server работает в своем собственном контексте. Если это не ваша локальная машина, ваш 'D: \' может быть где-то еще ... – Shnugo
См. Веб-страницу: https://msdn.microsoft.com/en-us/library/ms162802.aspx. – jdweng
Привет, это все еще открыто? Вам нужна дополнительная помощь? Если эта проблема будет решена, было бы неплохо поставить галочку на приемочную проверку ниже счетчика голосов. Это будет 1) отметить эту проблему как решение 2) облегчить для последователей, чтобы найти лучшее решение 3) платить очки для ответчика и 4) платить очки вам. Поскольку вы пересекли границу с 15 пунктами, вы - дополнительно - попросили проголосовать за взносы. Это SO-способ сказать спасибо. Счастливое кодирование! – Shnugo