Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 SQL/XML  [new]
karabickay
Member

Откуда:
Сообщений: 25
Здравствуйте, помогите, пожалуйста, уже замучилась. Необходимо сформировать выходной XML-документ.

begin
dbms_xmlschema.registerSchema(
'US',
'<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb"
version ="1.0" xdb:storeVarrayAsTable="true"
elementFormDefault="qualified">
<xsd:element name="STUDENTS" type="students" xdb:SQLName="students"/>
<xsd:complexType name="students">
<xsd:sequence>
<xsd:element ref="STUDENT" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="TIME" type="xsd:string" xdb:SQLName="time"/>
<xsd:element name="SUBJECT" type="xsd:string" xdb:SQLName="subject"/>
<xsd:element name="STUDENT" type="student" xdb:SQLName="student"/>
<xsd:element name="DAY" type="day" xdb:SQLName="day"/>
<xsd:complexType name="day">
<xsd:sequence>
<xsd:element ref="TIME" minOccurs="1" maxOccurs="1"/>
<xsd:element ref="SUBJECT" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="student">
<xsd:sequence>
<xsd:element ref="DAY" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>');
end;

CREATE TABLE US.XML (ID number, SELECTION XmlType)
XMLTYPE SELECTION STORE AS OBJECT RELATIONAL XMLSCHEMA "US" ELEMENT "STUDENTS";


insert into US.XML
select 1 "id", "BD" from (
SELECT XMLRoot( XMLCONCAT( XMLPI(NAME "xml-stylesheet", 'type="text/xsl" href="BD.xsl"'),
XMLElement("STUDENTS", XMLAttributes('http://www.w3.org/2001/XMLSchema' AS "xmlns:xsi",
'US.xsd' AS "xsi:nonamespaceSchemaLocation"),
XMLAGG( XMLELEMENT("STUDENT", XMLATTRIBUTES(US.STUDENTS.NAME AS "NAME"),
XMLAGG( XMLELEMENT("DAY", XMLATTRIBUTES(US.DAYS.TITLE AS "TITLE"),
XMLELEMENT("TIME", CONCAT(TO_CHAR (US.LESSONS.STARTS, 'HH24:MI'), CONCAT('-', TO_CHAR (US.LESSONS.ENDS, 'HH24:MI')))),
XMLELEMENT("SUBJECT", US.SUBJECTS.TITLE))))))), VERSION '1.0') as "BD"
FROM US.STUDENTS, US.DAYS, US.LESSONS, US.SUBJECTS, US.COM_CLASS, US.CLASSES, US.TEACHERS, US.TIMETABLES
WHERE US.STUDENTS.S_ID=US.COM_CLASS.S_ID
AND US.CLASSES.CLASS_ID=US.COM_CLASS.CLASS_ID
AND US.TEACHERS.SUB_ID=US.SUBJECTS.SUB_ID
AND US.CLASSES.T_ID=US.TEACHERS.T_ID
AND US.TIMETABLES.L_ID=US.LESSONS.L_ID
AND US.TIMETABLES.DAY_ID=US.DAYS.DAY_ID
AND US.TIMETABLES.CLASS_ID=US.CLASSES.CLASS_ID
GROUP BY US.STUDENTS.NAME, US.DAYS.TITLE
)

Выдает ошибку ERROR at line 1:
ORA-30937: No schema definition for 'nonamespaceSchemaLocation' (namespace
'http://www.w3.org/2001/XMLSchema') in parent '/STUDENTS'
Как это можно исправить?
19 ноя 15, 10:24    [18439355]     Ответить | Цитировать Сообщить модератору
 Re: SQL/XML  [new]
karabickay
Member

Откуда:
Сообщений: 25
Неужели, такой глупый вопрос?
21 ноя 15, 12:38    [18451860]     Ответить | Цитировать Сообщить модератору
 Re: SQL/XML  [new]
ArtNick
Member

Откуда:
Сообщений: 1227
karabickay,
Неа, скрипты нечитаемо оформлены
21 ноя 15, 16:28    [18452316]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить