Язык запросов SQL


SQL 2003 и XML


Глава 17 SQL 2003 и XML
Глава 17. SQL:2003 и XML...
В этой главе ...
В этой главе... Использование SQL с XML XML, базы данных и Internet Одной из самых существенных новых функциональных возможностей языка SQL:2003 является поддержка файлов XML (ex...
Как XML связываемся с SQL
Как XML связываемся, с SQL XML, как и HTML, является языком разметки, а значит, не полнофункциональным языком, как, например, C++ или Java. Это даже не подъязык манипулирования данными, как SQL....
Тип данных XML
Тип данных XML В SQL:2OO3 впервые был представлен новый для SQL тип данных — тип XML. Это означает, что согласованные между собой реализации могут хранить и работать непосредственно с данными фо...
Когда используются XMLданные
Когда используются XML-данные Необходимость хранения данных в формате XML зависит от того, что вы планируете делать с этим данными. Принятие такого решения целесообразно в следующих случаях....
Когда ХМLданные не используются
Когда ХМL-данные не используются Иногда использование XML-данных не имеет никакого смысла, поскольку сегодня большинство данных в реляционных базах данных гораздо лучше работает в их текущем фор...
Преобразование данных из формата SQL в формат XML и наоборот
Преобразование данных из формата SQL в формат XML и наоборот Для обмена данными между базами данных SQL и XML-документами различные элементы базы данных SQL должны быть преобразованы в эквивале...
Преобразование наборов символов
Преобразование наборов символов В языке SQL поддержка наборов символов зависит от его реализации. Это означает, что приложение DB2 производства компании IBM может поддерживать наборы символов, к...
Преобразование идентификаторов
Преобразование идентификаторов В отличие от SQL, XML более точно подходит к определению идентификаторов. Прежде чем стать частью XML-документа, символы, допустимые в SQL и недопустимые в XML, до...
Преобразование типов данных
Преобразование типов данных В SQL:2003 определено, что данные типа SQL преобразуются в наиболее близкую схему XML-данных. Формулировка "наиболее близкая" означает, что все значения, до...
Преобразование таблиц
Преобразование таблиц Вы можете преобразовать таблицу в XML-документ, а также все таблицы в схему или все таблицы в каталог. Преобразование также определяет привилегии. Пользователь, имеющий при...
Обработка неопределенных значений
Обработка неопределенных значений Поскольку SQL-данные могут быть неопределенными значениями, необходимо решить, как представлять их в XML-документе. Неопределенные значения могут быть представл...
Создание XMLсхемы
Создание XML-схемы При преобразовании данных из SQL в XML первый созданный документ содержит данные, а второй — информацию о схеме. В качестве примера рассмотрим схему для документа CUSTOMER (см...
Получение XML результатов при использовании операторов SQL
Получение XML результатов при использовании операторов SQL SQL: 2003 имеет пять операторов, XMLELEMENT, XMLFOREST, XMLGEN, XMLCONCAT и XMLAGG, которые при применении к содержимому базы данных SQ...
Оператор XMLELEMENT
Оператор XMLELEMENT Оператор XMLELEMENT создает XML-элемент. Этот оператор может использоваться в операторе SELECT для помещения данных формата XML в базу данных SQL. Рассмотрим следующий пример...
Оператор XMLFOREST
Оператор XMLFOREST Оператор XMLFOREST создает дерево (forest) элементов из списка аргументов. Каждый аргумент оператора создает новый элемент. Ниже приведен пример использования такого оператора...
Оператор XMLGEN
Оператор XMLGEN Первый аргумент оператора XMLGEN— это шаблон, который содержит символы-заполнители для значений, которые будут добавлены позже. Символы-заполнители представлены в форме "{$n...
Оператор XMLCONCAT
Оператор XMLCONCAT Оператор XMLCONCAT обеспечивает альтернативный способ создания дерева элементов. Это осуществляется путем связывания его XML-аргументов. Например: SELECT с.LastName  &n...
Оператор XMLAGG
Оператор XMLAGG XMLAGG — это агрегирующая функция, которая создает единственный XML-документ из других XML-документов или их отдельных фрагментов. Агрегирование содержит дерево элементов. Рассмот...
Преобразование не предопределенных типов данных в XML
Преобразование не предопределенных типов данных в XML В SQL:2003 к не предопределенным типам данных относятся домены, отдельные UDT-типы, строки, массивы и мультимножества. Для преобразования ка...
Домены
Домены Для того чтобы преобразовать SQL-домен в XML, вначале этот домен необходимо создать. Для создания домена воспользуемся оператором CREATE DOMAIN: CREATE DOMAIN WestCoast AS CHAR (2) CHECK...
Отдельные UDTтипы
Отдельные UDT-типы С отдельными UDT-типами вы можете делать то же самое, что и с доменами, однако здесь необходим более строгий подход к определению типа. Например: CREATE TYPE WestCoast AS Chara...
Строки
Строки Тип ROW позволяет поместить целую строку с ценной информацией в одно лишь отдельное поле строки таблицы. Тип ROW создается как часть описания таблицы следующим образом: CREATE TA...
Массивы
Массивы Если вы хотите поместить в одно поле больше одного элемента, вместо типа ROW воспользуйтесь типом Array. Для этого примера в таблице CONTACTINFO объявим столбец Phone как массив, а затем...
Мультимножества
Мультимножества Номера телефонов из предыдущего примера могут также хорошо храниться и в мультимножествах. Для преобразования мультимножества воспользуемся следующим программным кодом:...








Начало