SQL/XML

SQL/XML

SQL/XML 또는 XML 관련 사양구조화된 질의 언어(SQL) 규격의 14부다. 다음과 같은 기존 미리 정의된 SQL 데이터 유형 외에 NUMERIC, CHAR, TIMESTAMP, ... 미리 정의된 데이터 유형 소개 XML SQL 데이터베이스에서 XML의 조작 및 저장을 지원하기 위한 생성자, 여러 루틴, 함수 및 XML-to-SQL 데이터 유형 매핑과 함께.

사양

사양은 데이터 유형을 정의한다. XML요소 구성, 관계 테이블의 데이터 매핑, XML 조각 조합, SQL 문에 XQuery 식 포함 등 XML 관련 작업을 위한 기능. 내장할 수 있는 함수로는 XMLQUERY(XML 필드에서 XML 또는 값을 추출하는 함수)와 XMLEXIST(XQuery 식이 일치하는지 여부를 명시하는 함수)가 있다.

SQL/XML 기능의 추가 정보와 예는 아래 외부[2][3][4] 링크에서 제공된다.

표준 준수

Wagner가 Oracle 11g Release 1, MS SQL Server 2008 및 MySQL 5.1.30의 SQL/XML:2006 표준 준수 여부를 객관적으로 평가한 결과는 Postgre에 대한 데이터를 다음 표에 나타낸[2] 것이다.SQL 9.1 [5][6]및 IBM DB2가 추가됨:

Oracle 11g 릴리스 1 IBM DB2 9.7 MS SQL Server 2008 MySQL 5.1.30 PostgreSQL 9.1
데이터 유형 XML 부분(오라클은 'XML' 대신 데이터 유형 'XMLType'의 권한을 부여함) 높은 높은 아니요. 부분적
SQL/XML 술어 높은 높은 부분적 아니요. 부분적
SQL/XML 함수 높은 높은 부분적 낮음 높은
XQuery 확대 아니요. 아니요.

아래 샘플 SQLXML 쿼리는 출력으로 SQLXML 유형을 가지고 있다(DB2 9.7 및 Oracle 11g에서 테스트됨).

선택 XMLEENTION(이름 "폰북", -- 루트 요소 이름                   XMLAG(           -- 행에 대한 집합                    XMLEENTION(이름 "연락처",                                                                     XMLATTRIBUTES(커스터드.퍼스트_NAME AS "이름",                                 커스터드.전화 번호)                               )                         )                   ) From TMP.고객 AS 커스터드; 

출력:

<폰북>     <연락처 이름="다니엘" TEL="788255855"/>     <연락처 이름="마틴" TEL="889665447"/>     <연락처 이름="에바"    TEL="111222333"/>     <연락처 이름="알레나"  TEL="444555666"/>     <연락처 이름="올리버" TEL="777888999"/>     <연락처 이름="조지" TEL="444882446"/>     <연락처 이름="재미"  TEL="123456789"/> </PhoneBook> 

샘플은 자바로비 기사에서[7] 채취한 것이다.

참조

  1. ^ Funderburk, J. E.; Malaika, S.; Reinwald, B. (2002), "XML programming with SQL/XML and XQuery" (PDF), IBM Systems Journal, 41 (4): 642–665, doi:10.1147/sj.414.0642, retrieved 14 November 2011
  2. ^ a b Wagner, Michael (2010), "1. Auflage", SQL/XML:2006 - Evaluierung der Standardkonformität ausgewählter Datenbanksysteme, Diplomica Verlag, ISBN 978-3-8366-9609-8
  3. ^ Eisenberg, Andrew; Melton, Jim (2004), "Advancements in SQL/XML" (PDF), SIGMOD Record, 33 (3): 79, doi:10.1145/1031570.1031588, retrieved 14 November 2011
  4. ^ Eisenberg, Andrew; Melton, Jim (2002), "SQL/XML is Making Good Progress" (PDF), SIGMOD Record, 31 (2): 101, CiteSeerX 10.1.1.109.4867, doi:10.1145/565117.565141, retrieved 14 November 2011
  5. ^ PostgreSQL Postgre에서 ISO 9075-14(SQL/XML) 준수SQL 9.1 설명서.
  6. ^ PostgreSQL 9.1 XML 기능, PostgreSQL 9.1 설명서.
  7. ^ Kec, Daniel (2013), SQLX - From DB Straight to XML and Back, Javalobby.org

외부 링크