Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
OPENXML
|
|||
|---|---|---|---|
|
#18+
Никак не могу выбрать значение элементов из XML declare @doc varchar(1000) set @doc = ' <ROOT> <seat_type_id>NORM</seat_type_id> <seat_type_id>NSSD</seat_type_id> </ROOT> ' declare @idoc int EXEC sp_xml_preparedocument @idoc OUTPUT, @doc select * from OPENXML(@idoc, '/ROOT/*', 2) with (seat_type_id varchar(40) 'seat_type_id') EXEC sp_xml_removedocument @idoc выдаёт 2 записи с NULL и всё ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2001, 14:27 |
|
||
|
OPENXML
|
|||
|---|---|---|---|
|
#18+
"DECLARE @idoc int DECLARE @doc varchar(1000) SET @doc =' <ROOT> <Customer CustomerID="VINET" ContactName="Paul Henriot"> <Order CustomerID="VINET" EmployeeID="5" OrderDate="1996-07-04T00:00:00"> <OrderDetail OrderID="10248" ProductID="11" Quantity="12"/> <OrderDetail OrderID="10248" ProductID="42" Quantity="10"/> </Order> </Customer> <Customer CustomerID="LILAS" ContactName="Carlos Gonzlez"> <Order CustomerID="LILAS" EmployeeID="3" OrderDate="1996-08-16T00:00:00"> <OrderDetail OrderID="10283" ProductID="72" Quantity="3"/> </Order> </Customer> </ROOT>' --Create an internal representation of the XML document. EXEC sp_xml_preparedocument @idoc OUTPUT, @doc -- Execute a SELECT statement that uses the OPENXML rowset provider. SELECT * FROM OPENXML (@idoc, '/ROOT/Customer',1) WITH (CustomerID varchar(10), ContactName varchar(20)) If the same SELECT statement is executed with flags set to 2, indicating element-centric mapping, the values of CustomerID and ContactName for both of the customers in the XML document are returned as NULL, because the <Customers> elements do not have any subelements. " Это не про ваш случай ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2001, 14:48 |
|
||
|
OPENXML
|
|||
|---|---|---|---|
|
#18+
Неа . .пробовал я и с 2 .. та же ерунда, 2 NULL записи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2001, 15:13 |
|
||
|
OPENXML
|
|||
|---|---|---|---|
|
#18+
Дело в том, что МС не признаёт синтаксис вида: <ROOT> <seat_type_id>NORM</seat_type_id> <seat_type_id>NSSD</seat_type_id> </ROOT> Он не генерится с помощью FOR XML и не распознаётся OPENXML Можно использовать только: <ROOT> <seat_type_id id="NORM"/> <seat_type_id id="NSSD"/> </ROOT> declare @doc varchar(1000) set @doc = ' <ROOT> <seat_type_id id="NORM"/> <seat_type_id id="NSSD"/> </ROOT> ' declare @idoc int EXEC sp_xml_preparedocument @idoc OUTPUT, @doc select * from OPENXML(@idoc, '/ROOT/seat_type_id', 2) with ( id varchar(40) '@id' ) EXEC sp_xml_removedocument @idoc Единственный выход - OPENXML без with: select * into #temp from OPENXML(@idoc, '/ROOT', 2) и анализировать #temp самому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2001, 15:30 |
|
||
|
OPENXML
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Попробуйте вот так: declare @doc varchar(1000) set @doc = ' <ROOT> <seat_type_id>NORM</seat_type_id> <seat_type_id>NSSD</seat_type_id> </ROOT> ' declare @idoc int EXEC sp_xml_preparedocument @idoc OUTPUT, @doc select * from OPENXML(@idoc, '//seat_type_id', 2) with (seat_type_id varchar(40) '.') EXEC sp_xml_removedocument @idoc Желаю успехов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2001, 08:14 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32018705&tid=1824650]: |
0ms |
get settings: |
5ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 210ms |
| total: | 348ms |

| 0 / 0 |
