Реферат: Использование XML совместно с SQL
[WITH (SchemaDeclaration | TableName)]
Аргументы:
idoc – хендл XML-документа, полученный при помощи хранимой процедуры sp_xml_preparedocument;
rowpattern – локализуемая группа XPath или, проще говоря, XPath-выражение;
flags – набор флагов, указывающих на то, как должны быть сопоставлены данные документа XML и реляционного набора строк;
ShemaDeclaration – определение полей реляционного набора строк в формате:
ColName ColType [ColPattern | MetaProperty] |
Где
ColName – имя поля.
ColType – тип поля. Допускаются все типы SQL Server.
ColPattern - локализуемая группа XPath для поля.
MetaProperty – метасвойство. Его мы рассматривать не будем.
XML-документ подготавливается с помощью хранимой процедуры sp_xml_preparedocument. Процедура использует анализатор MSXML для проверки документа на правильность и возвращает хендл документа. После завершения работы с OPENXML хендл нужно закрыть с помощью процедуры sp_xml_removedocument.
ПРИМЕЧАНИЕ sp_xml_preparedocument подготавливает XML-документ, представляя его в виде объектной модели DOM (Document Object Model). Если вы работаете с большими документами, это может вызвать некоторые проблемы. |
Как видно из синтаксиса, вы можете не указывать флаги и определения полей для реляционного набора строк. В этом случае SQL Server создаст внутреннее представление XML-документа в так называемом "edge table"-формате. Он практически не читаем, однако при большом желании его можно использовать. Описание этого формата выходит за рамки данной статьи, но в качестве доказательства того, что с ним можно работать, приведу пример. Пусть у нас имеется такой XML-документ:
<?xml version="1.0" encoding="windows-1251" ?> <rsdn> <forums date="09.01.03"> <forum name="WinAPI" totalposts="16688" description="Системноепрограммирование"> <moderators/> <top-poster>Alex Fedotov</top-poster> </forum> <forum name="COM" totalposts="10116" description="Компонентныетехнологии"> <moderators/> <top-poster>Vi2</top-poster> </forum> <forum name="Delphi" totalposts="5001" К-во Просмотров: 536
Бесплатно скачать Реферат: Использование XML совместно с SQL
|