Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Новое на сайте
Новое

Признаки зарождавшегося использования XML

Признаки зарождавшегося использования XMLКогда археологи проводили раскопки самых древних пластов SQL Server, они обнаружили признаки зарождавшегося использования XML, датируемые примерно 2000-м годом. Изначальный подход, представленный в Microsoft SQL Server 2000, сводился к привязке данных XML ко множеству реляционных таблиц. Тогда в диалекте SQL от Microsoft появилось несколько новых ключевых слов, предназначенных для хранения и извлечения документов XML: FOR XML, AUTO, EXPLICIT, RAW, XMLDATA, ELEMENTS, ROWSET и OPENXML, наряду с несколькими хранимыми процедурами, предназначенными для манипуляций с документами XML. В SQL Server 2000 существовало два ключевых слова, предназначенных для работы с XML: FOR XML и OPENXML. Первое из них использовалось в инструкции SELECT для указания серверу SQL Server на доставку результатов запроса в формате XML. Режимы RAW, EXPLICIT, AUTO и PATH определяют формат результирующего документа XML (обратите внимание, что нет никакого намека на то, сохранять ли документ во внешнем файле или в символьных строках). В режиме RAW каждая строка принимается в качестве отдельного элемента в столбцах таблицы, определенных в качестве атрибутов; это правило остается в силе независимо от количества таблиц, объединяемых в запросе. В режиме AUTO документы форматируются в соответствии с иерархической структурой родительских и дочерних таблиц, участвующих в запросе. Результаты для одной таблицы фактически идентичны режиму RAW. Режим EXPLICIT преобразует набор данных, возвращаемый запросом, в документ XML. Однако при этом сам набор данных должен иметь заданный формат. Режим PATH в связке с новым ключевым словом FOR реализует гибкость режима EXPLICIT в несколько упрощенном виде, однако требует строгого соответствия набора данных следующим спецификациям. Первый столбец должен называться TAG и содержать только неотрицательные целые числа. Второй столбец должен называться PARENT и содержать либо неотрицательные, либо неопределенные (NULL) значения. Все остальные столбцы должны быть отформатированы как