Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Сохранение результата запроса SQL в XML файл в определенное место.  [new]
sl1pgcp
Member

Откуда:
Сообщений: 5
Здравствуйте уважаемые знатоки, прощу помочь новичку. Имеется запрос:

USE TestDB
GO
SELECT GoodName,
Amount
FROM vw_CurrentWarehouseStation WS
Where WS.WarehouseID = 3 and Barcode = '4823015920301'
FOR XML AUTO

В данном случае я получаю результат в XML файле, которые хранится где-то на компьютере, но необходимо, чтобы этот результат сохранялся, к примеру, в "C:\Test".

Заранее спасибо!
23 июн 14, 14:00    [16206426]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
https://www.sql.ru/faq/faq_topic.aspx?fid=131
23 июн 14, 14:05    [16206475]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
Гавриленко Сергей Алексеевич
https://www.sql.ru/faq/faq_topic.aspx?fid=131




или
exec sp_makewebtask
23 июн 14, 14:16    [16206551]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8839
Запрос лучше подавать снаружи. Если не хотите писать приложение, можно обойтись VB скриптом, например.
Поместите содержимое в test.vbs файл и замените константы на требуемые:
' запрос
Const adOpenStatic = 3
Const adLockOptimistic = 3

Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")

objConnection.Open "Provider=SQLOLEDB;Data Source=MY_SERVER;Trusted_Connection=Yes;Initial Catalog=MY_DATABASE;"
objRecordSet.Open "SELECT * FROM table1", objConnection, adOpenStatic, adLockOptimistic
objRecordSet.MoveFirst

' вывод в файл
Const ForAppending = 8
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile ("c:\exchange\#result.txt", ForAppending, True)
objTextFile.WriteLine("записей всего: " & objRecordSet.RecordCount)
objTextFile.Close
Wscript.Echo objRecordSet.RecordCount

Затем этот файл можно выполнить.
23 июн 14, 14:16    [16206558]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
sl1pgcp,

или

зачем не исполлзуете

Microsoft Sql Server Reporting Service

там все простое
23 июн 14, 14:34    [16206661]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
sl1pgcp
Member

Откуда:
Сообщений: 5
Владислав Колосов, таким образом я получаю текстовый файл, в котором видно количество строк, но не сами данные представленные в XML.
23 июн 14, 15:14    [16206999]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
BULK, BCP, spSaveToFile, spXMLQuery
23 июн 14, 15:35    [16207227]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Ой, в последнем случае не варианта "в файл".
23 июн 14, 15:38    [16207259]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
sqlcmd -SServer -E -q"SELECT GoodName,
Amount
FROM vw_CurrentWarehouseStation WS
Where WS.WarehouseID = 3 and Barcode = '4823015920301'
FOR XML AUTO " -o"C:\1.xml"
23 июн 14, 15:40    [16207284]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
sl1pgcp
Member

Откуда:
Сообщений: 5
Maxx, подскажите пожалуйста, в чем необходимо выполнять данный скрипт.
23 июн 14, 16:37    [16207778]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
sl1pgcp
Member

Откуда:
Сообщений: 5
Maxx,

HResult 0x35, уровень 16, состояние 1
Поставщик именованных каналов: Не удалось открыть соединение с SQL Server [53].
Sqlcmd: ошибка - Microsoft SQL Native Client: При подключении к серверу возникла ошибка. При подключении к серверу SQL Server 2005 данная ошибка может возникать из-за того, что параметры по умолчанию сервера SQL Server не разрешают устанавливать удаленные соединения..
Sqlcmd: ошибка - Microsoft SQL Native Client: Время ожидания входа в систему истекло.
23 июн 14, 16:41    [16207812]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
sl1pgcp,
в командной строке
23 июн 14, 16:41    [16207818]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
sl1pgcp,

посмотрите хепл по sqlcmdи начните с простого
sqlcmd -SВаш Сервер -E
получаеться зайти или нет ...
Дальше добавляете парметр БД
патом запрос
патом вывод в файл
попутно узнатет что у вас таки не работает.. походу чет наймед папйпс у вас ругаеться .. смотрите менеджер конфигурации ,что у вас открыто какие протоколы
23 июн 14, 17:24    [16208107]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
sl1pgcp
Member

Откуда:
Сообщений: 5
Maxx, спасибо большое!
23 июн 14, 17:25    [16208114]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Mnior
Ой, в последнем случае не варианта "в файл".
Расширил, теперь можно и в файл и даже трансформацию XSLT сверху навесить.
spXMLQuery
23 июн 14, 17:33    [16208150]     Ответить | Цитировать Сообщить модератору
 Re: Сохранение результата запроса SQL в XML файл в определенное место.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8839
sl1pgcp
Владислав Колосов, таким образом я получаю текстовый файл, в котором видно количество строк, но не сами данные представленные в XML.

Так проявите фантазию, напишите тот запрос, который Вам нужен и измените расширение выходного файла. Уж на это программист должен быть способен.
23 июн 14, 18:07    [16208357]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить