2 Natywne bazy XML Języki zapytań XQuery Źródła 14

Wielkość: px
Rozpocząć pokaz od strony:

Download "2 Natywne bazy XML 9 2.1 Języki zapytań... 9 2.2 XQuery... 11. 3 Źródła 14"

Transkrypt

1 Plan wykładu Spis treści 1 Bazy przechowujące XML XMLType Schematy XML Perspektywy XMLType Biblioteki PL/SQL SQL/XML XML DB Repository Natywne bazy XML Języki zapytań XQuery Źródła 14 Bazy danych a XML Bazy danych umożliwiające przechowanie danych w formacie XML (ang. XMLenabled database systems) - postrelacyjne, obiektowo-relacyjne systemy zarządzania bazą danych, które na wejściu i na wyjściu akceptują i generują dane w postaci XML. Bazy danych dokumentów XML - natywne bazy danych XML (ang. native XML database systems)- zorientowane na przetwarzanie dokumentów XML, używają dokumentów XML jako podstawowego typu przechowywania. 1 Bazy przechowujące XML Przechowywanie danych XML w systemie plików w atrybutach typu: CLOB, XMLType w bazach danych w postaci zdekomponowanej XML DB mapowanie schematów XML na schematy baz danych generowanie schematów XML ze schematów baz danych i odwrotnie XML DB rozszerzenie funkcjonalności SZBD Oracle, służące wygodnemu gromadzeniu, generowaniu, przeszukiwaniu i przetwarzaniu dokumentów XML. Składowe: typ XMLType, możliwość wykorzystywania schematów XML, biblioteki programisty PL/SQL służące do parsowania dokumentów XML,

2 rozszerzenia języka SQL umożliwiające generowanie dokumentów XML na podstawie treści relacyjnej, mechanizm XML DB Repository, umożliwiający wykorzystanie bazy danych jako łatwo dostępnej składnicy dokumentów XML. 1.1 XMLType XMLType XMLType typ danych służący do przechowywania i przetwarzania dokumentów XML w obiektoworelacyjnym SZBD Oracle. Każda wartość typu XMLType jest odrębnym, kompletnym dokumentem XML. Fizyczne składowanie dokumentów na dwa sposoby: każdy dokument staje się jednym dużym obiektem CLOB (domyślnie), każdy dokument jest dekomponowany na rekordy zapisywane w wielu tabelach relacyjnych (wymaga posiadania schematu XML). Obsługa XMLType CREATE TABLE produkty_xml ( kod NUMBER(11), opis XMLType ) INSERT INTO produkty_xml VALUES ( , XMLType( <produkt> <nazwa>antena dachowa</nazwa> <symbol> </symbol> <cena>85</cena> </produkt> ) ); select opis from produkty_xml; OPIS <produkt> <nazwa>antena dachowa</nazwa> <symbol> </symbol> <cena>85</cena> </produkt> Funkcje do przetwarzania XMLType existsnode() - sprawdza, czy wartościowanie podanego wyrażenia XPath względem wartości XMLType zwraca co najmniej jeden element lub węzeł tekstowy. Wynikiem działania tej funkcji jest wartość 0 lub 1. 2

3 SELECT kod FROM produkty_xml WHERE existsnode(opis, /produkt[cena=85] ) = 1; extract() - zwraca fragment dokumentu XML wskazany wyrażeniem XPath. extractvalue() - zwraca wartość skalarną odpowiadającą wynikowi wartościowania wyrażenia XPath. updatexml() - modyfikuje wybrane węzły w obiekcie XMLType. Argumentami funkcji updatexml() są pary: wyrażenie XPath, wartość. UPDATE ksiazki_xml p SET VALUE(p) = updatexml(value(p), //cena/text(), 56, //rok/text(), 2003) WHERE extractvalue(value(p), )= X ; XMLTransform() - dokonuje transformacji dokumentu XML w oparciu o dostarczony arkusz stylów XSL. Zarówno dokument źródłowy, jak i arkusz stylów są przekazywane funkcji jako argumenty typu XMLType. Wynikiem działania funkcji jest przekształcony dokument XML, reprezentowany przez wartość XMLType. 1.2 Schematy XML Schematy XML Schematy XML (ang. XML Schema) - służą do przechowywania w bazie danych opisu struktury dokumentów XML, a następnie ich wykorzystywania do: walidacji dokumentów, automatycznego odwzorowywania dokumentów XML w struktury relacyjne, tworzenia tabel lub kolumn XMLType opartych na schematach XML, poprawy efektywności operacji DML na danych XML. Rejestracja schematu Rejestracja schematu za pomocą funkcji dbms_xmlschema.registerschema() pociąga za sobą szereg niejawnych operacji, wykonywanych przez SZBD, mających na celu przygotowanie infrastruktury dla składowania i przetwarzania dokumentów XML zgodnych z danym schematem: utworzenie obiektowych typów danych SQL umożliwiających składowanie dokumentów XML w postaci strukturalnej, utworzenie domyślnych tabel dla głównych elementów schematu. 3

4 Przykład DBMS_XMLSCHEMA.registerSchema( ksiazka.xsd, <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema" xmlns:xdb="http://xmlns.oracle.com/xdb"> <xs:element name="ksiazka" xdb:sqltype="ksiazka_t"> <xs:complextype> <xs:sequence> <xs:element name="tytul" type="xs:string"/> <xs:element name="cena" type="xs:float" xdb:sqlname="cena" xdb:sqltype="float"/> <xs:element name="autorzy" minoccurs="0" maxoccurs="1" xdb:sqltype="clob"> <xs:complextype> <xs:sequence> <xs:element name="autor" type="xs:string" minoccurs="1" maxoccurs="unbounded"/> </xs:sequence> </xs:complextype> </xs:element> <xs:element name="wydawnictwo" type="xs:string"/> <xs:element name="rok" type="xs:integer"/> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complextype> </xs:element> </xs:schema> ); Przykład cd. SQL> desc KSIAZKA_T KSIAZKA_T is NOT FINAL Nazwa Wartość NULL? Typ SYS_XDBPD$ XDB.XDB$RAW_LIST_T isbn VARCHAR2(4000) tytul VARCHAR2(4000) CENA FLOAT(126) autorzy CLOB wydawnictwo VARCHAR2(4000) rok NUMBER(38) Definiowanie elementu na bazie schematu W oparciu o zarejestrowany schemat można utworzyć tabele, perspektywy lub kolumny typu XMLType. Podczas definiowania elementów XMLType należy wskazać adres URL, pod którym zarejestrowano schemat XML, oraz wskazać wybrany element główny schematu. CREATE TABLE ksiazki_col_xsd ( 4

5 id NUMBER, pozycja XMLType ) XMLTYPE COLUMN pozycja XMLSCHEMA "ksiazka.xsd" ELEMENT "ksiazka"; Schematy - dalsze możliwości dbms_xmlschema.generateschema() - automatyczne generowanie schematów XML na podstawie definicji obiektowych typów danych; jako argumenty przyjmuje nazwę właściciela i nazwę zdefiniowanego obiektowego typu danych. W wyniku funkcja zwraca wygenerowany schemat XML. Przepisywanie zapytań:konwersja zapytań zawierających wyrażenia XPath do zapytań operujących na tabelach i kolumnach źródłowych: -- zapytanie oryginalne: SELECT VALUE(k) FROM katalog k WHERE extractvalue(value(k), /katalog/ksiazka/rok ) = 2002 ; -- zapytanie po transformacji: SELECT VALUE(k) FROM katalog k WHERE k.xmldata.ksiazka.rok = 2002 ; dbms_xmlschema.copyevolve() - możliwość modyfikacji zarejestrowanego schematu XML. 1.3 Perspektywy XMLType Perspektywy XMLType Perspektywy XMLType budowane ponad tabelami obiektowo-relacyjnymi, a zwracające obiekty XMLType. Umożliwiają one przezroczystą prezentację istniejących danych w formacie XML. Podczas definiowania perspektyw XMLType mogą być wykorzystywane schematy XML. CREATE VIEW emp_xml_view (doc) AS SELECT XMLElement(NAME "EMPLOYEE", XMLForest(ename, job, sal)) FROM emp; SELECT doc FROM emp_xml_view v WHERE v.doc.existsnode( /EMPLOYEE[SAL>2900] )=1 DOC <EMPLOYEE> <ENAME>JONES</ENAME> <JOB>MANAGER</JOB> <SAL>2975</SAL> 5

6 </EMPLOYEE> <EMPLOYEE> <ENAME>SCOTT</ENAME> <JOB>ANALYST</JOB> <SAL>3000</SAL> </EMPLOYEE> 1.4 Biblioteki PL/SQL Biblioteki PL/SQL PL/SQL Parser API for XMLType (dbms_xmlparser) - zawiera parser DOM, służący do transformacji dokumentu XML do standardowej struktury drzewa Document Object Model (DOM). PL/SQL DOM API for XMLType (dbms_xmldom) - do nawigacji wewnątrz drzewa DOM. PL/SQL XSLT Processor for XMLType (dbms_xslprocessor) - do transformacji XSL. 1.5 SQL/XML SQL/XML SQL/XML część specyfikacji języka zapytań SQL, opisująca sposoby wykorzystywania SQL w połączeniu z XML; rozszerza SQL o funkcje i operatory służące do generowania dokumentów XML na podstawie zawartości relacyjnej bazy danych. Podstawowe funkcje: XMLElement(), XMLForest(), XMLGen(), XMLConcat(), XMLAgg(). XMLElement() XMLElement() służy do tworzenia elementów XML z danych, które nie są obiektami XML. SELECT p.nr_akt, XMLElement (NAME "prac", p.nazwisko) AS "wynik" FROM pracownicy p; <prac>krol</prac> 8902 <prac>michalski</prac> 9121 <prac>kukulski</prac> 9011 <prac>wierzbicki</prac> 6

7 9235 <prac>fikus</prac> 8904 <prac>skalski</prac> Z wykorzystaniem atrybutów: SELECT XMLElement (NAME "prac", XMLAttributes(p.nr_akt AS "id"), p.nazwisko) AS "wynik" FROM pracownicy p; <prac id="8901">krol</prac> <prac id="9235">fikus</prac> <prac id="8904">skalski</prac> <prac id="8910">moniuszko</prac> <prac id="8911">wrzosek</prac> <prac id="9411">lisiecki</prac> <prac id="8932">brzozka</prac> XMLForest() XMLForest() tworzy las elementów XML na podstawie danych nie będących obiektami XML. SELECT p.nr_akt, XMLForest(p.nazwisko AS "nazwisko", p.placa AS "placa") AS "wynik" FROM pracownicy p WHERE p.nr_akt < 9000 ; NR_AKT wynik <nazwisko>krol</nazwisko><placa>7000</placa> 8902 <nazwisko>michalski</nazwisko><placa>5000</placa> 8904 <nazwisko>skalski</nazwisko><placa>3500</placa> 8910 <nazwisko>moniuszko</nazwisko><placa>5000</placa> 8911 <nazwisko>wrzosek</nazwisko><placa>1500</placa> 8913 <nazwisko>kowalska</nazwisko><placa>5000</placa> XMLGen() XMLGen() pozwala generować dokumenty XML na podstawie szablonu realizowanego na źródłowych danych relacyjnych. SELECT XMLGen ( <prac id="{$nr_akt}"> <nazwisko>{$nazwisko}</nazwisko> <placa>{$placa}</placa> </prac>, p.nr_akt, p.nazwisko AS nazwisko, p.placa) AS "wynik" FROM pracownicy p WHERE p.nr_akt < 9000 ; 7

8 wynik <prac id="8901"> <nazwisko>krol</nazwisko> <placa>7000</placa> </prac> <prac id="8902"> <nazwisko>michalski</nazwisko> <placa>5000</placa> </prac> XMLAgg() XMLAgg() służy do tworzenia lasu elementów z kolekcji elementów XML wywiedzionych z różnych rekordów tabeli. SELECT XMLElement(NAME "dzial", XMLAttributes(p.id_dzialu AS "id"), XMLAgg(XMLElement(NAME "prac", p.nazwisko)) ) AS "wynik" FROM pracownicy p GROUP BY id_dzialu; <dzial id="10"> <prac>krol</prac> <prac>skalski</prac> <prac>kowalska</prac> </dzial> <dzial id="20"> <prac>moniuszko</prac> <prac>lisiecki</prac> <prac>wojcik</prac> <prac>rybak</prac> <prac>szczesny</prac> <prac>wrzosek</prac> </dzial> SELECT XMLElement(NAME "dzial", XMLAttributes(nazwa AS "nazwa"), XMLAgg(XMLElement(NAME "prac", nazwisko) ORDER BY nazwisko)) AS "wynik" FROM pracownicy NATURAL JOIN dzialy GROUP BY nazwa; <dzial nazwa="badania"> <prac>nawrocki</prac> <prac>prusinska</prac> </dzial> <dzial nazwa="ksiegowosc"> <prac>bielecka</prac> <prac>brzozka</prac> <prac>mazur</prac> 8

9 <prac>wojcik</prac> </dzial> 1.6 XML DB Repository XML DB Repository Repozytorium dokumentów XML (ang. XML DB Repository) jest usługą SZBD Oracle, umożliwiającą przechowywanie i udostępnianie dokumentów XML w formie wirtualnego systemu plików, implementowanego wewnątrz bazy danych. Dostęp do repozytorium dokumentów XML jest możliwy poprzez FTP, WebDAV/HTTP lub SQL. Dokumenty i foldery umieszczane w repozytorium są zapisywane w tabelach bazy danych. Programista może uzyskać dostęp do tych tabel m.in. za pomocą funkcji pakietu dbms_xdb. 2 Natywne bazy XML Natywne bazy XML Baza danych dokumentów XML: definiuje model dla dokumentów XML-owych; dokumenty XML podstawową jednostką składowania; wykorzystuje dowolny sposób fizycznego składowania. Funkcjonalność bazy danych dokumentów XML Bazy dokumentów XML zapewniają: składowanie dokumentów XML, definiowanie i przechowywanie schematów (DTD, XMLSchema), obsługa zapytań (XPath, XQuery, XML-QL, Quilt), obsługa modyfikacji, wstawiania i usuwania dokumentów, obsługa interfejsów programistycznych (XML:DB API, XQuery API for Java - XQJ, SAX, DOM, JDOM), funkcjonalność tradycyjnych SZBD. 9

10 2.1 Języki zapytań Języki zapytań Wymagania: zapisanie złożonych warunków wyszukiwań deklaratywność wyniki w tej samej formie, co dane źródłowe wykonanie przekształceń znalezionej informacji, w tym agregacji obsługa kwantyfikatorów zachowanie hierarchii i sekwencji struktur itp. Języki zapytań dla XML Lorel - opracowano w ramach przedsięwzięcia LORE w Uniwersytecie Stanforda jako język zapytań dla danych półstrukturalnych. Dostosowany do przetwarzania dokumentów XML; jest językiem składniowo podobnym do SQL; był on wzorowany na OQL ze standardu ODMG. select R.tytuł from dokument.książka.rozdział R, R(.punkt)+.tytuł TP where TP = "Standardowe typy danych"; XML-QL - opracowano w laboratoriach AT&T. Zapytania XML-QL składają się z dwóch części: where (jak w SQL from i where razem wzięte) i construct (odpowiada klauzuli select z SQL). where <książka> <rozdział> <tytuł> $TR </> <punkt+.tytuł> $TP </> </rozdział> </książka> in "ksiazka.xml", $TP = "Standardowe typy danych" construct <tytuł> $TR </tytuł> XML-GL - graficzny język zapytań opracowany na Politechnice Mediolańskiej; jest próbą realizacji języka przyjaznego ludziom na wzór QBE (Query-By-Example = zapytanie poprzez przykład) opracowanego dla relacyjnych baz danych. 10

11 XSLT - rekomendowany przez W3C język do definiowania transformacji dokumentów XML w inne dokumenty (być może również XML). Jedno przekształcenie XSLT przetwarza tylko jeden dokument XML. XSLT jest przeznaczony raczej do formatowania i wyświetlania dokumentów, jednak szablon XSLT jest definicją pewnej funkcji działającej w zbiorze dokumentów XML, ma więc pewne podstawowe cechy zapytania. <?xml version="1.0" encoding="iso "?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> <xsl:template match="/"> <xsl:apply-templates select="książka/rozdział"/> </xsl:template> <xsl:template match="/książka/rozdział"> <xsl:if test="punkt//tytuł= Standardowe typy danych "> <tytuł> <xsl:value-of select="tytuł"/> </tytuł> </xsl:if> </xsl:template> </xsl:stylesheet> XQL - służy do wybierania i filtrowania elementów oraz tekstu z dokumentów XML; nie pozwala na konstruowanie nowych elementów w wyniku zapytania. Zapytanie XQL może zwrócić tylko pewien podzbiór elementów i tekstów znajdujących się w dokumentach wejściowych. Jest to język zapytań ścieżkowych podobny do XPath. książka/rozdział[punkt//tytuł= Standardowe typy danych ]/tytuł XPATH - deklaratywny język wykorzystywany przez kilka innych technologii rekomendowanych przez konsorcjum W3C. XPath jest używany do adresowania elemen- 11

12 tów dokumentów XML (m.in. w XSLT i XLink/XPointer) oraz do wyszukiwania wzorców w dokumentach XML (m.in. w XSLT i XQuery). XQuery - jest tym dla XML czym jest SQL dla baz danych. 2.2 XQuery XQuery XQuery - funkcyjny język zapytań dla dokumentów XML Cechy: deklaratywny i zgodny z modelem danych XML; konstrukcje języka zawsze zwracaja wartość; konstrukcje można zagnieżdżać; zbudowany na bazie wyrażeń XPath; zdolny do przetwarzania dokumentów zawierających odwołania do różnych przestrzeni nazw; umożliwia kontrolę typów dla systemu typów XML Schema; poprawnie działa również wtedy, gdy nie zdefiniowano schematów albo są one niedostępne; umożliwia łączenie danych pochodzących z wielu dokumentów i liczenie agregacji; rekomendowany przez W3C. XQuery - składowe Podstawowe elementy języka: sekwencje wyrażenia (ścieżkowe, warunkowe, agregacje, kwantyfikatory) zmienne operatory funkcje wbudowane wartości logiczne komentarze proste funkcje użytkownika Zasady wielkość liter jest rozróżniana elementy, atrybuty i zmienne muszą mieć nazwy zgodne ze standardem XML łańcuchy umieszczamy w apostrofach lub cudzysłowie nazwy zmiennych są poprzedzone znakiem $ ($zmienna) komentarze są ograniczone dwukropkami (:komentarz:) 12

13 Budowanie zapytania Otwarcie pliku XML: doc("ksiazki.xml") Wybór elementów (tytuły książek znajdujących się w księgarni): doc("ksiazki.xml")/ksiegarnia/ksiazka/tytul w wyniku: <title jezyk="pl">rok 1984</title> <title jezyk="pl">hyperion</title> <title jezyk="pl">ubik</title> Budowanie warunku: doc("ksiazki.xml")/ksiegarnia/ksiazka[cena<30] w wyniku: <ksiazka kategoria="dziecieca"> <tytul jezyk="pl">entliczek Pentliczek</tytul> <autor>jan Brzechwa</autor> <rok>2011</rok> <cena>1.99</cena> </ksiazka> Budowanie zapytania z FLWOR FLWOR - akronim słów: For, Let, Where, Order by, Return : pozwala przejść po elementach zadanej kolekcji (fraza for), zdefiniować zmienne pomocnicze (fraza let), odfiltrować niepotrzebne elementy (fraza where), uporządkować to, co pozostanie (fraza order by), wypisać wynik w odpowiedniej postaci (fraza return). Zamiast: doc("ksiazki.xml")/ksiegarnia/ksiazka[cena>30]/tytul można użyć: 13

14 for $x in doc("ksiazki.xml")/ksiegarnia/ksiazka where $x/cena>30 return $x/tytul FLWOR udostępnia sortowanie: for $x in doc("ksiazki.xml")/ksiegarnia/ksiazka where $x/cena>30 order by $x/tytul return $x/tytul XQuery dalsze składowe instrukcje warunkowe i kwantyfikatory for $k in collection("ksiegarnia")/ksiazka order by $k/tytul return <pozycja> { if (count($k/autor) <= 2) then $k/autor else <praca-zbiorowa/> } { $k/tytul } </pozycja> Funkcje i rekurencja declare function local:st($elem as element()) as element()* { for $p in $elem/*[name()="punkt" or name()="rozdział"] return <pozycja> { $p/tytuł, local:st($p) } </pozycja> }; kontrola typu typy podstawowe badanie typu 3 Źródła Źródła W wykładzie wykorzystano materiały: BUNEMAN P., Semistructured data, W: Proceedings of PODS, 1997, ABITEBOUL S., Querying semi-structured data, W: Proceedings of ICDT, 1997,

15 Oracle XML DB Developer s Guide 10g Release 1, dokumentacja techniczna Oracle Zbigniew Jurkiewicz, Semistrukturalne bazy danych - wprowadzenie, materiały do wykładów, Instytut Informatyki UW Materiały do wykładów Pani mgr Wandy Kik Wikipedia 15

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX Aktualizowanie dokumentów XML ( Oracle ) do aktualizowania zawartości dokumentów XML służy między innymi funkcja updatexml. wynikiem jej działania jest oryginalny dokument ze zmodyfikowanym fragmentem,

Bardziej szczegółowo

Przetwarzanie dokumentów XML w Oracle10g: XML DB

Przetwarzanie dokumentów XML w Oracle10g: XML DB Przetwarzanie dokumentów XML w Oracle10g: XML DB Maciej Zakrzewicz Politechnika Poznaska Streszczenie System zarzdzania baz danych Oracle10g posiada szereg wbudowanych mechanizmów, słucych do przechowywania,

Bardziej szczegółowo

Model semistrukturalny

Model semistrukturalny Model semistrukturalny standaryzacja danych z różnych źródeł realizacja złożonej struktury zależności, wielokrotne zagnieżdżania zobrazowane przez grafy skierowane model samoopisujący się wielkości i typy

Bardziej szczegółowo

Bazy danych dokumentów XML wykład 1 wprowadzenie

Bazy danych dokumentów XML wykład 1 wprowadzenie Bazy danych dokumentów XML wykład 1 wprowadzenie Wykład przygotował: Krzysztof Jankiewicz Bazy danych dokumentów XML wykład 1 wprowadzenie Przez ostatnich kilkanaście lat znaczenie formatu danych XML stale

Bardziej szczegółowo

Przestrzenne bazy danych Podstawy języka SQL

Przestrzenne bazy danych Podstawy języka SQL Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

Oracle11g: Wprowadzenie do SQL Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

Standard SQL/XML. Wprowadzenie do XQuery

Standard SQL/XML. Wprowadzenie do XQuery Standard SQL/XML Wprowadzenie do XQuery Marek Wojciechowski marek@cs.put.poznan.pl http://www.cs.put.poznan.pl/~marek/ Języki zapytań dla XML Wraz z pojawieniem się standardu XML pojawiały się również

Bardziej szczegółowo

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk Wstęp wprowadzający do laboratorium 2 mgr inż. Rafał Grycuk Plan prezentacji 1. Czym jest T-SQL i czym się różni od standardu SQL 2. Typy zapytań 3. Zapytanie typu SELECT 4. Słowo o indeksach T-SQL (1)

Bardziej szczegółowo

XML w bazie danych IBM DB2

XML w bazie danych IBM DB2 Instytut Informatyki Politechnika Śląska Gliwice, ul. Akademicka 16 XML w bazie danych IBM DB2 Dr inż. Dariusz Mrozek Wykład: IBM DB2 uniwersalna platforma przetwarzania danych O czym dzisiaj? XML w relacyjnej

Bardziej szczegółowo

XML extensible Markup Language 7

XML extensible Markup Language 7 XML extensible Markup Language 7 XQuery Co to jest XQuery? XQuery to język zapytań dla XML. XQuery jest dla XML tym czym SQL dla baz danych, a SPARQL dla RDF. XQuery wykorzystuje wyrażenia XPath. XQuery

Bardziej szczegółowo

Systemy GIS Tworzenie zapytań w bazach danych

Systemy GIS Tworzenie zapytań w bazach danych Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE

Bardziej szczegółowo

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie

Bardziej szczegółowo

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw

Bardziej szczegółowo

XQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.

XQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3. XQuery XQuery XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.org/tr/xquery/ Język programowania funkcyjnego (podobnie jak Lisp) Język zapytań do danych

Bardziej szczegółowo

Wykorzystywanie parsera DOM w programach Java i PL/SQL

Wykorzystywanie parsera DOM w programach Java i PL/SQL Wykorzystywanie parsera DOM w programach Java i PL/SQL Maciej Zakrzewicz mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ Parser DOM Aplikacja DOM API Parser DOM Dokument XML Drzewo DOM Parser

Bardziej szczegółowo

Tworzenie raportów XML Publisher przy użyciu Data Templates

Tworzenie raportów XML Publisher przy użyciu Data Templates Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia

Bardziej szczegółowo

P o d s t a w y j ę z y k a S Q L

P o d s t a w y j ę z y k a S Q L P o d s t a w y j ę z y k a S Q L Adam Cakudis IFP UAM Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja System bazy danych System zarządzania baz ą danych Schemat Baza danych K o n c e p

Bardziej szczegółowo

DB2 XML w relacyjnych bazach danych wstęp do wprowadzenia. Kuba Pochrybniak

DB2 XML w relacyjnych bazach danych wstęp do wprowadzenia. Kuba Pochrybniak DB2 XML w relacyjnych bazach danych wstęp do wprowadzenia Kuba Pochrybniak osoba id="137" imie Helena /imie osoba id="137" imie Helena /imie imie Jagienka /imie osoba id="137" imie Helena /imie imie Jagienka

Bardziej szczegółowo

15. Funkcje i procedury składowane PL/SQL

15. Funkcje i procedury składowane PL/SQL 15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp

Bardziej szczegółowo

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued

Bardziej szczegółowo

Monika Kruk Mariusz Grabowski. Informatyka Stosowana WFiIS, AGH 13 grudzień 2006

Monika Kruk Mariusz Grabowski. Informatyka Stosowana WFiIS, AGH 13 grudzień 2006 OBIEKTOWOŚĆ W BAZIE DANYCH ORACLE Monika Kruk Mariusz Grabowski Informatyka Stosowana WFiIS, AGH 13 grudzień 2006 Plan prezentacji kilka słów o bazie danych ORACLE rzecz o obiektach ORACLE tworzenie typów

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT Studia podyplomowe Inżynieria oprogramowania współfinansowane przez Unię Europejska w ramach Europejskiego Funduszu Społecznego Projekt Studia podyplomowe z zakresu wytwarzania oprogramowania oraz zarządzania

Bardziej szczegółowo

XML Schema. Bartłomiej Świercz. Łódź, 19 listopada 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz XML Schema

XML Schema. Bartłomiej Świercz. Łódź, 19 listopada 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz XML Schema XML Schema Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 19 listopada 2005 roku Wstęp XML Schema służy do definiowania struktury dokumentu XML (pełni podobną funkcję jak DTD).

Bardziej szczegółowo

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w

Bardziej szczegółowo

Język SQL, zajęcia nr 1

Język SQL, zajęcia nr 1 Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze

Bardziej szczegółowo

XML w bazach danych i bezpieczeństwie

XML w bazach danych i bezpieczeństwie XML w bazach danych i bezpieczeństwie Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Klasyfikacja wsparcia dla XML-a w bazach danych (Relacyjna) baza danych

Bardziej szczegółowo

Bazy danych - wykład wstępny

Bazy danych - wykład wstępny Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,

Bardziej szczegółowo

Intro. I.Wojnicki, ZTB:XML ZTB: XML. Igor Wojnicki. Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie.

Intro. I.Wojnicki, ZTB:XML ZTB: XML. Igor Wojnicki. Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie. Intro Igor Wojnicki (AGH, KIS) XML 18 grudnia 2013 1 / 37 ZTB: XML Igor Wojnicki Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie 18 grudnia 2013 Intro Igor Wojnicki (AGH, KIS) XML

Bardziej szczegółowo

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678'); polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {

Bardziej szczegółowo

Microsoft SQL Server Podstawy T-SQL

Microsoft SQL Server Podstawy T-SQL Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania

Bardziej szczegółowo

Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL

Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD i XML Schema), oraz transformacja

Bardziej szczegółowo

Rola języka XML narzędziem

Rola języka XML narzędziem Wprowadzenie do XML dr inż. Adam Iwaniak Szkolenie w Luboradzy, ZCPWZ, 12-13.02.2009r. Rola języka XML narzędziem Pierwszą rewolucją internetową było dostarczenie ludziom informacji. Znajdujemy się teraz

Bardziej szczegółowo

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych Plan wykładu Bazy danych Wykład 9: Przechodzenie od diagramów E/R do modelu relacyjnego. Definiowanie perspektyw. Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - perspektywy

Bardziej szczegółowo

Obiektowe bazy danych Obiektowe i obiektowo-relacyjne bazy danych

Obiektowe bazy danych Obiektowe i obiektowo-relacyjne bazy danych Obiektowe bazy danych Obiektowe i obiektowo-relacyjne bazy danych Wykład prowadzi: Tomasz Koszlajda Obiektowe bazy danych Obiektowe i obiektowo-relacyjne bazy danych W ramach niniejszego wykładu zostaną

Bardziej szczegółowo

XML extensible Markup Language 3

XML extensible Markup Language 3 XML extensible Markup Language 3 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie

Bardziej szczegółowo

252 Bazy danych. Praca z językiem XML

252 Bazy danych. Praca z językiem XML 252 Bazy danych Praca z językiem XML Bazy danych 253 Przegląd zagadnień Przechowywanie danych w XML Wybieranie danych z XML Podsumowanie Laboratorium XML (ang. extensible Markup Language) jest językiem

Bardziej szczegółowo

Spis tre±ci. 1 Wst p... 1 1.1 Zawarto± rozdziaªów... 1 1.2 Projekt LoXiM... 2

Spis tre±ci. 1 Wst p... 1 1.1 Zawarto± rozdziaªów... 1 1.2 Projekt LoXiM... 2 1 Wst p..................................................... 1 1.1 Zawarto± rozdziaªów................................... 1 1.2 Projekt LoXiM........................................ 2 2 Strukturalne obiektowe

Bardziej szczegółowo

Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT

Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT Marek Wojciechowski marek@cs.put.poznan.pl http://www.cs.put.poznan.pl/~marek/ Formatowanie dokumentów XML Język XML opisuje strukturę i

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)

Bardziej szczegółowo

Język XSLT. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Język XSLT. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz Język XSLT Po zrealizowaniu materiału student będzie w stanie Dokonać przekształcenia zawartości dokumentu XML do formatu HTML oraz TXT Realizować przetwarzanie warunkowe dokumentu XML Formatować wartości

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność

Bardziej szczegółowo

Ref. 7 - Język SQL - polecenia DDL i DML

Ref. 7 - Język SQL - polecenia DDL i DML Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość

Bardziej szczegółowo

XQuery. sobota, 17 grudnia 11

XQuery. sobota, 17 grudnia 11 XQuery XQuery XQuery pozwala na wydobywanie danych z dokumentów XML w sposób podobny do tego w jaki używany jest SQL do tabel w bazach danych. XQuery to język do wykonywania zapytań na dokumentach XML.

Bardziej szczegółowo

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Historia i standardy Podstawy relacyjności Typy danych DDL tabele, widoki, sekwencje zmiana struktury DML DQL Podstawy, złączenia,

Bardziej szczegółowo

Obiektowe bazy danych Ćwiczenia laboratoryjne (?)

Obiektowe bazy danych Ćwiczenia laboratoryjne (?) Obiektowe bazy danych Ćwiczenia laboratoryjne (?) Tworzenie typów obiektowych 1. Zdefiniuj typ obiektowy reprezentujący SAMOCHODY. Każdy samochód powinien mieć markę, model, liczbę kilometrów oraz datę

Bardziej szczegółowo

DECLARE typ [( )] [ NOT NULL ] [ { := DEFAULT } ];

DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ]; Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server

Bardziej szczegółowo

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1 Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych

Bardziej szczegółowo

Przykładowy dokument XML

Przykładowy dokument XML Język XML XML (extensible Markup Language, czyli rozszerzalny język znaczników) to specyfikacja dotycząca przechowywania informacji. Jest to również specyfikacja opisujaca strukturę tych informacji. XML

Bardziej szczegółowo

www.comarch.pl/szkolenia Operacja PIVOT w języku SQL w środowisku Oracle 21.11.2012

www.comarch.pl/szkolenia Operacja PIVOT w języku SQL w środowisku Oracle 21.11.2012 Operacja PIVOT w języku SQL w środowisku Oracle 21.11.2012 Zakres Wprowadzenie Idea przestawiania danych Możliwe zastosowania Przestawianie danych bez klauzuli PIVOT Konstrukcja klauzuli Korzyści ze stosowania

Bardziej szczegółowo

ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład

ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko Typy rozproszonych baz Systemy typu klient-serwer (jeden serwer) Jednorodna rozproszona baza (kilka serwerow, jeden system zarzadzania baza ) Niejednorodna

Bardziej szczegółowo

Zaawansowane bazy danych i hurtownie danych semestr I

Zaawansowane bazy danych i hurtownie danych semestr I Podprogramy Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I Procedury do przeprowadzenia akcji Funkcje do obliczania wartości Pakiety do zbierania logicznie

Bardziej szczegółowo

Aplikacje internetowe laboratorium XML, DTD, XSL

Aplikacje internetowe laboratorium XML, DTD, XSL Aplikacje internetowe laboratorium XML, DTD, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD), oraz transformacja dokumentu XML do postaci

Bardziej szczegółowo

Obiektowe bazy danych

Obiektowe bazy danych Obiektowe bazy danych 1 Plan rozdziału 2 Wprowadzenie obiektowy model danych Obiekty w bazie danych definiowanie i przechowywanie składowe i metody konstruktory referencje dziedziczenie i polimorfizm Kolekcje

Bardziej szczegółowo

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy

Bardziej szczegółowo

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych

Bardziej szczegółowo

DMX DMX DMX DMX: CREATE MINING STRUCTURE. Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

DMX DMX DMX DMX: CREATE MINING STRUCTURE. Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski DMX DMX DMX Data Mining Extensions jest językiem do tworzenia i działania na modelach eksploracji danych w Microsoft SQL Server Analysis Services SSAS. Za pomocą DMX można tworzyć strukturę nowych modeli

Bardziej szczegółowo

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania Przedmiot: Bazy danych Rok: III Semestr: V Rodzaj zajęć i liczba godzin: Studia stacjonarne Studia niestacjonarne Wykład 30 21 Ćwiczenia Laboratorium 30 21 Projekt Liczba punktów ECTS: 4 C1 C2 C3 Cel przedmiotu

Bardziej szczegółowo

Język SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych

Język SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych Politechnika Śląska Instytut Informatyki instrukcja laboratoryjna laboratorium Bazy Danych przygotowali: mgr inż. Paweł Kasprowski (Kasprowski@zti.iinf.polsl.gliwice.pl) mgr inż. Bożena Małysiak (bozena@ivp.iinf.polsl.gliwice.pl)

Bardziej szczegółowo

Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20

Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20 Plan wykładu BAZY DANYCH II WYKŁAD 9 Dynamiczny SQL, NDS, EXECUTE IMMEDIATE, Pakiet DBMS_SQL, Obiekty w PL/SQL, Tworzenie, wywoływanie, dziedziczenie, etc. dr inż. Agnieszka Bołtuć Dynamiczny SQL Pozwala

Bardziej szczegółowo

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji 6. Język SQL Język SQL (Structured Query Language): - język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji - stworzony w IBM w latach 70-tych DML (Data Manipulation

Bardziej szczegółowo

XML Repository. Maciej Zakrzewicz. mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/

XML Repository. Maciej Zakrzewicz. mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ XML Repository Maciej Zakrzewicz mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ Charakterystyka XML Repository Repozytorium dokumentów XML (XML Repository) jest usługą serwera bazy danych

Bardziej szczegółowo

Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami

Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592 Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Spis treści Założenia Projektowe...1 Schemat Bazy Danych...1

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. 77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele

Bardziej szczegółowo

XML materiały dydaktyczne - Kurs Podstawowy XSL - wprowadzenie. XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO).

XML materiały dydaktyczne - Kurs Podstawowy XSL - wprowadzenie. XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO). XSL (XSLT) Transformacja dokumentów XML. XML warstwa przechowująca informacje XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO). Transformacja XSLT utworzenie nowego dokumentu wynikowego

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Podstawy relacyjnego modelu danych Dr inż. Paweł Kasprowski pawel@kasprowski.pl Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność

Bardziej szczegółowo

Plan prezentacji. Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura

Plan prezentacji. Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura XSLT Dariusz Dudek Plan prezentacji Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura Cechy XML a Rozszerzalny język znaczników Stworzony

Bardziej szczegółowo

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Modelowanie hierarchicznych struktur w relacyjnych bazach danych Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego

Bardziej szczegółowo

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE Wykład 9 Implementacja języka SQL w systemach baz danych Oracle manipulowanie danymi (DML), tworzenie, modyfikowanie i usuwanie obiektów bazy danych: tabel i perspektyw, więzów integralności, komentarzy

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

DECLARE VARIABLE zmienna1 typ danych; BEGIN

DECLARE VARIABLE zmienna1 typ danych; BEGIN Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze

Bardziej szczegółowo

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia ZP/ITS/11/2012 Załącznik nr 1a do SIWZ ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia Przedmiotem zamówienia jest: Przygotowanie zajęć dydaktycznych w postaci kursów e-learningowych przeznaczonych

Bardziej szczegółowo

Extensible Markup Language III

Extensible Markup Language III KIiMK 2010 Plan XSLT-transformacje dokumentów 1 XSLT-transformacjedokumentów Informacje o XSLT Przykład transformacji 2 3 Informacje o XSLT Przykład transformacji Informacje o XSLT Przykład transformacji

Bardziej szczegółowo

Wprowadzenie do JDBC z wykorzystaniem bazy H2

Wprowadzenie do JDBC z wykorzystaniem bazy H2 Wprowadzenie do JDBC z wykorzystaniem bazy H2 JDBC (ang. Java DataBase Connectivity). Biblioteka stanowiąca interfejs umożliwiający aplikacjom napisanym w języku Java porozumiewać się z bazami danych za

Bardziej szczegółowo

Wykład XII. optymalizacja w relacyjnych bazach danych

Wykład XII. optymalizacja w relacyjnych bazach danych Optymalizacja wyznaczenie spośród dopuszczalnych rozwiązań danego problemu, rozwiązania najlepszego ze względu na przyjęte kryterium jakości ( np. koszt, zysk, niezawodność ) optymalizacja w relacyjnych

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł

Bardziej szczegółowo

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

Część 1: OLAP. Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych

Część 1: OLAP. Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych Łukasz Przywarty 171018 Wrocław, 05.12.2012 r. Grupa: CZW/N 10:00-13:00 Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych Część 1: OLAP Prowadzący: dr inż. Henryk Maciejewski

Bardziej szczegółowo

Język XQuery jako narzędzie do integracji danych Oracle XML Data Synthesis

Język XQuery jako narzędzie do integracji danych Oracle XML Data Synthesis Język XQuery jako narzędzie do integracji danych Język XQuery jako narzędzie do integracji danych Oracle XML Data Synthesis Tomasz Traczyk Wydział Elektroniki i Technik Informacyjnych Politechnika Warszawska

Bardziej szczegółowo

XML w bazach danych, standardy wiążące dokumenty XML

XML w bazach danych, standardy wiążące dokumenty XML XML w bazach danych, standardy wiążące dokumenty XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarządzania treścią 2008/09 Walidacja względem DTD podczas parsowania SAXParserFactory

Bardziej szczegółowo

Rodzaje przetwarzania XSLT (1)

Rodzaje przetwarzania XSLT (1) XSLT część 2 Rodzaje przetwarzania XSLT (1) Przetwarzanie sterowane strukturą dokumentu źródłowego (ang. push): przechodzimy po strukturze dokumentu źródłowego, generujemy fragmenty struktury dokumentu

Bardziej szczegółowo

Oracle11g: Programowanie w PL/SQL

Oracle11g: Programowanie w PL/SQL Oracle11g: Programowanie w PL/SQL OPIS: Kurs pozwala zrozumieć zalety programowania w języku PL/SQL. Studenci uczą się tworzyć bloki kodu wykonywanego po stronie serwera, który może być współużytkowany

Bardziej szczegółowo

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym. Modele - konceptualne reprezentacja obiektów w

Bardziej szczegółowo

Język XML Query. Czym jest XML Query? Po co XML Query? Tomasz Traczyk. Czym jest XML Query? Wprowadzenie do składni języka.

Język XML Query. Czym jest XML Query? Po co XML Query? Tomasz Traczyk. Czym jest XML Query? Wprowadzenie do składni języka. Język XML Query Język XML Query Tomasz Traczyk ttraczyk@ia.pw.edu.pl http://www.ia.pw.edu.pl/~ttraczyk/ Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Instytut Automatyki i Informatyki

Bardziej szczegółowo

Hurtownie danych - przegląd technologii

Hurtownie danych - przegląd technologii Hurtownie danych - przegląd technologii Problematyka zasilania hurtowni danych - Oracle Data Integrator Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel

Bardziej szczegółowo

Plan wykładu Projekt fizyczny bazy danych Wprowadzenie PL/SQL PL/SQL Cechy PL/SQL

Plan wykładu Projekt fizyczny bazy danych Wprowadzenie PL/SQL PL/SQL Cechy PL/SQL Plan wykładu Uzupełnienie projektu fizycznego Czym jest PL/SQL Bloki w PL/SQL Zmienne i stałe Instrukcje sterujące Wykorzystanie SQL w PL/SQL Kursory Wyjątki Projekt fizyczny bazy danych Braki projektu

Bardziej szczegółowo

DB2 XML Extender. Opracowane na podstawie dokumentacji IBM XML Extender

DB2 XML Extender. Opracowane na podstawie dokumentacji IBM XML Extender DB2 XML Extender Opracowane na podstawie dokumentacji IBM XML Extender mgr inż. Adam Duszeńko Politechnika Śląska w Gliwicach, 2005 Rozszerzenie DB2 XML Extender umożliwia: - dostęp i składowanie dokumentów

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Zapoznanie studentów z wiadomościami

Bardziej szczegółowo

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych. XML a relacyjne bazy danych XML w bazach danych. Korzyści: integracja aplikacji, wymiana danych, łatwe transformacje danych, prezentacja danych. Problemy: czy i jak przechowywać dokumenty XML w bazie danych?

Bardziej szczegółowo

Wprowadzenie do XML schema

Wprowadzenie do XML schema Spis treści Tomasz Przechlewski 1. Podstawowe pojęcia. 1 2. Typy proste.. 3 3. Wzorzec regułowy 4 4. Typy złożone 5 5. Modele o prostej zawartości 5 6. Modele o złożonej zawartości. 6 7. Rozszerzanie modelu

Bardziej szczegółowo

Tworzenie aplikacji bazodanowych w delphi dla dużych baz danych FRAMEWORK IMPET

Tworzenie aplikacji bazodanowych w delphi dla dużych baz danych FRAMEWORK IMPET Tworzenie aplikacji bazodanowych w delphi dla dużych baz danych FRAMEWORK IMPET Maciej Szymczak, maj 2001 soft@home.pl Ostatnia aktualizacja: 2012-03-31 1 Plan widoczny podczas całego wykładu Numer slajdu

Bardziej szczegółowo

Zaawansowane Systemy Baz Danych

Zaawansowane Systemy Baz Danych Zaawansowane Systemy Baz Danych dr inż. Olga Siedlecka olga.siedlecka@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 4 maja 2009 r. Plan seminarium Wprowadzenie Stosowane

Bardziej szczegółowo

OLAP i hurtownie danych c.d.

OLAP i hurtownie danych c.d. OLAP i hurtownie danych c.d. Przypomnienie OLAP -narzędzia analizy danych Hurtownie danych -duże bazy danych zorientowane tematycznie, nieulotne, zmienne w czasie, wspierjące procesy podejmowania decyzji

Bardziej szczegółowo

SQL (ang. Structured Query Language)

SQL (ang. Structured Query Language) SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze

Bardziej szczegółowo

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT 1. Wstęp XML (Extensible Markup Language Rozszerzalny Język Znaczników) to język formalny przeznaczony do reprezentowania danych

Bardziej szczegółowo

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych Plan wykładu Bazy danych Cechy rozproszonej bazy danych Implementacja rozproszonej bazy Wykład 15: Rozproszone bazy danych Małgorzata Krętowska, Agnieszka Oniśko Wydział Informatyki PB Bazy danych (studia

Bardziej szczegółowo