Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 OPENXML ntext  [new]
20050121
Guest
DECLARE @idoc int
EXEC sp_xml_preparedocument @idoc OUTPUT,'.......'

SELECT    *
FROM       OPENXML (@idoc, '/.../',8)
WITH ( ....)
exec sp_xml_removedocument @idoc

Выше представлен код. Во второй строке после OUTPUT идет текст xml файла. Данный файл существует на локальном диске. Можно ли как-то в хранимой процедуре его подставлять? если можно то каким образом. Возможно использование DTS. Файл большой естественно nvarchar не подойдет. Можно ли в DTS или в T-SQL считать данный файл и затем весь текст подставить в процедуру. Буду признателен за любые предложения. Просто требуется автоматизировать данный процесс. Может быть кто-то даст линк на примеры и объяснения.
2 фев 05, 11:38    [1293445]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Поиск
2 фев 05, 11:41    [1293455]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
Роман Дынник
Member

Откуда:
Сообщений: 3324

Данный файл существует на локальном диске. Можно ли как-то в хранимой процедуре его подставлять

Скорее всего наилучшим вариантом для загрузки xml из большого файла будет xml bulk load.

Posted via ActualForum NNTP Server 1.1

2 фев 05, 11:44    [1293481]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
20050121
Guest
Роман Дынник

Данный файл существует на локальном диске. Можно ли как-то в хранимой процедуре его подставлять

Скорее всего наилучшим вариантом для загрузки xml из большого файла будет xml bulk load.
Posted via ActualForum NNTP Server 1.1

BULK Load не подходит. Файл не слишком простой, чтобы ее использовать. есть нюансы, которые это не позволяют сделать. Так что этот вариант не подходит.
2 фев 05, 11:50    [1293508]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2423
Пример метода "2-х уровневого динамического sql-a"
2 фев 05, 12:06    [1293598]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
Роман Дынник
Member

Откуда:
Сообщений: 3324

BULK Load не подходит. Файл не слишком простой, чтобы ее использовать. есть нюансы, которые это не позволяют сделать. Так что этот вариант не подходит

в xml bulk load файл можно сопоставить схеме, так что зхагрузить можно любую структуру xml.

Posted via ActualForum NNTP Server 1.1

2 фев 05, 12:19    [1293659]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
Роман Дынник
Member

Откуда:
Сообщений: 3324

пример по xml bulk load

Posted via ActualForum NNTP Server 1.1

2 фев 05, 12:23    [1293677]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
20050121
Guest
Роман Дынник

пример по xml bulk load

Posted via ActualForum NNTP Server 1.1

А если схему нет? Тогда как быть?
2 фев 05, 12:30    [1293704]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
20050121
Guest
Изначально то идея была такая
вместо:
EXEC sp_xml_preparedocument @idoc OUTPUT,'.......'
подставлять (конечно утрированно)
EXEC sp_xml_preparedocument @idoc OUTPUT,C:\ xmlfile.xml
Есть ли какой-то способ сделать так?
2 фев 05, 12:33    [1293716]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
Роман Дынник
Member

Откуда:
Сообщений: 3324

EXEC sp_xml_preparedocument @idoc OUTPUT,C:\ xmlfile.xml
Есть ли какой-то способ сделать так?

так сделать нельзя.

Схему сами создать можете, иначе для чего же она тут еще нужна? как раз для того чтобы разметить как вы файл загружать будете.

Posted via ActualForum NNTP Server 1.1

2 фев 05, 12:48    [1293790]     Ответить | Цитировать Сообщить модератору
 Re: OPENXML ntext  [new]
Роман Дынник
Member

Откуда:
Сообщений: 3324
и tpg вам ссылку дал...
там есть топик как большие xml файлы грузить.
как вариант - ч/з sp_OACreate 'MSXML2.DOMDocument' ....
хотя по моему мнению это не очень хорошее решение

https://www.sql.ru/forum/actualthread.aspx?tid=150007&hl=preparedocument

Posted via ActualForum NNTP Server 1.1

2 фев 05, 12:52    [1293807]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить