MS SQL Server Supporto XML. HTTP e SQL Server. SQL Server Over HTTP: Setup. Accesso HTTP verso SQL Server. OpenXML. Updategrams



Похожие документы
Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

19. LA PROGRAMMAZIONE LATO SERVER

Introduzione ai Sistemi di Gestione di Basi di Dati XML

XML e Sistemi per la Gestione di Basi di Dati Relazionali

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

JDBC versione base. Le classi/interfacce principali di JDBC

Structured Query Language parte 1

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D

Dati relazionali e XML

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

Access. P a r t e p r i m a

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Applicazioni Web: meccanismi per il passaggio di informazioni tramite HTTP Corso di Applicazioni Telematiche

XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS

Lezione 9. Applicazioni tradizionali

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

JDBC. A. Bechini Accesso a DataD con Java

Sviluppo e integrazione di strumenti a supporto del reverse engineering di applicazioni flash

Esercitazione 8. Basi di dati e web

Architettura di MS SQL Server. SQL Server Architecture. Campi di Applicazione. OLTP (online transaction processing)

Esercitazione di Basi di Dati

Corso Sistemi Informativi Avanzati. Programma 30 set Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

Sistemi Mobili e Wireless Android - Dati persistenti: SQLite

DATABASE.

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

Informatica I per la. Fisica

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A Language) Stylesheet.

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Trasformazione DB Access In SQL Server. Michele De Nittis

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Università degli Studi di Bologna Bologna, 12/12/2002 Corso di Laurea In Informatica. Alessandro Valenti. Sessione II

Lezione V. Aula Multimediale - sabato 29/03/2008

Al giorno d oggi, i sistemi per la gestione di database

DBMS (Data Base Management System)

Le Basi di Dati. Le Basi di Dati

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

Esercitazione 01: DDL e DML di base

Corso di Laboratorio di Basi di Dati

SQL Server Integration Services. SQL Server 2005: ETL - 1. Integration Services Project

Corso Analista Programmatore Microsoft. Corso Analista Programmatore Microsoft Programma

SQL Server. SQL server e un RDBMS di tipo client/server che utilizza Transact-SQL per gestire la comunicazione fra un client e SQL Server

Personalizzazione Stampe

Misura delle prestazioni dei processi aziendali con sistemi di integrazione dati open source

Informatica per le discipline umanistiche 2 lezione 10

DOCFINDERWEB SERVICE E CLIENT

Sistemi centralizzati e distribuiti

Esercitazione sulle libpq - libreria C per PostgreSQL

POR Calabria FSE 2007/2013 Asse II Occupabilità Obiettivo operativo D1

Guida all'uso Di mylittleadmin

XSL: extensible Stylesheet Language

Architetture Informatiche. Dal Mainframe al Personal Computer

Lezione 6: Form 27/04/2012

Database e reti. Piero Gallo Pasquale Sirsi

ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2

Operazioni sui database

Non si deve fare ALCUN riferimento alla parte specifica di JDBC.

Corso Online Analista Programmatore Microsoft

Appunti sulle basi di dati. Cos è una base base di dati? Introduzione. D. Gubiani. 19 Luglio 2005

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE

2104 volume III Programmazione

EXPLOit Content Management Data Base per documenti SGML/XML

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12

Corso sul linguaggio SQL

PHP e Structured Query Language

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf

SQL/OLAP. Estensioni OLAP in SQL

Le presenti note vengono rilasciate per presentare le principali novità della release 2010 Sp1 di Contact Pro.

MANUALE LSM INFORMAZIONI FONDAMENTALI SU LSM

Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

Database. Francesco Tapparo Informatica e Bioinformatica /16

Introduzione JDBC interfaccia java.sql driver caricare i driver

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke

Corso di Informatica (Basi di Dati)

Dispensa di database Access

Architetture Informatiche. Dal Mainframe al Personal Computer

SQL Server Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005.

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.

Il software di gestione immobiliare più facile da usare. Modulo Web v5.2.

Esercitazione 01: DDL e DML di base

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

Tecnologie di Sviluppo per il Web

Brochure Internet. Versione The Keyrules Company s.r.l. Pagina 2 di 8

Транскрипт:

Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Corso di Complementi di Informatica MS SQL Server Supporto XML Prof. Pasquale Basile pabasile@unina.it HTTP e SQL Server Accesso HTTP verso SQL Server per SELECT, INSERT, DELETE, DDL OpenXML Espone XML come se fossero dati relazionali Updategrams Update SQL Server tramite HTTP SQL Server Over HTTP: Setup L accesso è effettuato mediante filtri ISAPI DLL e OLE DB Provider Un apposita utility MMC (plug in) permette la configurazione delle directory virtuali di IIS con gli opportuni filtri ISAPI

XML 101 Attributo dichiarazione XML <?xml version="1.0"?> <Order o_id="7845" o_date="1999-02 02-01"01" o_cur="usd" c_id="jantoy" > <ShippingAddress sa_city="erie" sa_state="pa" sa_pcode="19130"> Elemento <Line l_text="jan's Toys" /> <Line l_text="1818 Market Street" /> Elemento vuoto <Line l_text="3rd Floor, Room 1219" /> </ShippingAddress ShippingAddress> <OrderDetails> <Item p_id="325" p_name="whirlygig Whirlygig" od_qty="5" od_unitp="15.50" /> <Item p_id="326" p_name="zapper" od_qty="2" od_unitp="10.25" /> <Item p_id="327" p_name="whirlygig Whirlygig" od_qty="5" od_unitp="15.50" /> </OrderDetails OrderDetails> <Comments> Start-tag This order replaces order 7844 which was cancelled by the customer. </Comments> </Order> End-tag Contenuto Elemento Root XML in SQL Server 2000 SQL Server produce e consuma documenti XML HTTP GET/POST i documenti XML possono essere passati come testo o manipolati tramite S.P. Query XML Supporto schemi XDR Supporto elaborazione XSL server-side XML Web Updategrams Retrieving and Writing XML Data Istruzioni T-SQL per XML clausola FOR XML modalità RAW, AUTO e EXPLICIT keywords TAG e PARENT OpenXML Funge da rowset provider a partire da documenti XML Permette di macinare documenti XML per INSERT UPDATE DELETE dati in tabelle Utilizza due S.P. di sistema sp_xml_preparedocument sp_xml_removedocument

SELECT FOR XML SELECT statement ::= < query_expression > [ FOR XML { RAW AUTO EXPLICIT } [, XMLDATA ] [, ELEMENTS ] [, BINARY base64 ] ] RAW RAW Ogni riga risultante dalla query viene trasformata in un elemento XML con una tag generica <row />. AUTO Ritorna un semplice albero XML. Ogni tabella (FROM) con almeno una colonna in SELECT è rappresentata come un elemento XML. Le colonne in SELECT sono mappate nel corrispondente elemento attributo. EXPLICIT L albero XML risultante è definito esplicitamente. Con questa modalità le query devono essere scritte in modo particolare al fine di specificare esplicitamente le informazioni addizionali sulla struttura. OpenXML OpenXML fornisce una vista rowset a partire da un documento XML. Essendo OPENXML un rowset provider, può essere usato negli statement T-SQL, come INSERT o UPDATE, al posto di una tabella, view o altri provider (come OPENROWSET).

Stored Procedures per OpenXML sp_xml_preparedocument Legge il testo XML in input, lo analizza con il parser MSXML (Msxml2.dll) e fornisce il documento analizzato in uno stato pronto per essere consumato. Questo documento è una rappresentazione ad albero dei vari nodi (elementi, attributi, text, commenti,...) nel documento XML. OPENXML, come detto, traduce questo documento XML in un rowset utilizzabile in T-SQL. sp_xml_preparedocument hdoc OUTPUT [, xmltext] [, xpath_namespaces] OpenXML OPENXML(idoc int [in],rowpattern nvarchar[in],[flags byte[in]]) [WITH (SchemaDeclaration TableName)] HTTP SQL Server Architecture Browsers Applications IIS I S A P I OLE/DB (SQLOLEDB) SQL Server 2000 DB DB Client Middle Tier SQL Server

Accessing SQL Server through a URL Interfacce HTTP URL query Query T-SQL embedded in una URL Template query Query T-SQL embedded in un documento XML Query XPath Querie definite mediante schemi XDR Query DBObject Fanno riferimento ad oggetti di database Utilissime per il recupero di BLOB s Accesso mediante URL URL Query http://server/virtualroot?sql= Template http://server/virtualroot/vname/tname?parametri XML View http://server/virtualroot/vname/nomeschema/xpath?parametri Query diretta http://server/virtualroot/vname/dbobjectname/xpath Setup: directory virtuale

Setup: directory virtuale Setup: nomi virtuali