Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL
|
|
- Mikołaj Wolski
- 9 lat temu
- Przeglądów:
Transkrypt
1 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 na uruchamianie instrukcji SQL bez znajomości kolumn i tabel występujących w tych instrukcjach, Statyczny SQL ma swoje zalety takie jak wiedza o dostępności potrzebnych obiektów, poprawnym zdefiniowaniu uprawnień już w czasie kompilowania lub testowania, ponadto statyczny kod SQL można modyfikować pod względem optymalnej wydajności, Dynamiczny SQL Jednak znajomość i używanie dynamicznego SQL jest praktycznie niezbędna, Dzięki niemu można dołączać instrukcje DDL do programów PL/SQL, dysponować kodem który dostosowuje się do zmian w tabelach, a także umożliwia obsługę różnych danych wejściowych użytkownika w programach składowanych, Dynamiczny SQL można używać wybierając język NDS lub pakiet DBMS_SQL, 1
2 Kiedy używać dynamicznego SQL NDS Wtedy gdy pełna składnia zapytania SQL jest nieznana w czasie wykonywania, Gdy nieznane są polecenia, klauzule zapytania SQL, Gdy nieznane są tabele, kolumny, indeksy, sekwencje, nazwy użytkowników, etc., Gdy chcesz aby kod był bardziej ogólny i elastyczny, NDS (z ang. Native Dynamic SQL) wbudowany dynamiczny język SQL, Narzędzie do uruchamiania dynamicznego kodu SQL, jest szybsze i bardziej efektywne niż pakiet DBMS_SQL, Umożliwia bezpośrednie korzystanie z kolekcji i typów obiektowych, Ma składnię odzwierciedlającą składnię instrukcji statycznych, NDS EXECUTE IMMEDIATE Może pobierać dane do rekordów, czego nie robi pakiet, Obsługuje wszystkie typy danych języka PL/SQL, które można było użyć w statycznych instrukcjach SQL, Bazuje na instrukcji EXECUTE IMMEDIATE, Służy do przetwarzania i wykonywania dynamicznego SQL, przyjmuje ona jeden argument będący łańcuchem znaków (VARCHAR2), Łańcuch znaków to polecenie w języku SQL bez uwzględnienia w nim średnika, Średnik uwzględniamy wówczas gdy łańcuchem znaków jest blok anonimowy, 2
3 EXECUTE IMMEDIATE EXECUTE IMMEDIATE EXECUTE IMMEDIATE łańcuch_znaków [INTO {zmienna [,zmienna] rekord}] [USING [IN OUT IN OUT] zmienna_wiązana [, [IN OUT IN OUT] zmienna_wiązana] ]; łańcuch_znaków to dynamiczne zapytanie SQL bez średnika lub blok anonimowy ze średnikiem, zmienne, rekord zmienne PL/SQL przechowujące wartości kolumn, rekord przechowuje wybrany wiersz, zmienna_wiązana wartość wyrażenia przekazywana do dynamicznego SQL lub bloku anonimowego, EXECUTE IMMEDIATE INTO używane dla jednowierszowych zapytań, specyfikuje zmienne lub rekord do których zapisane będą wartości ze zwracanych przez zapytanie kolumn, USING używany do ładowania zmiennych wiązanych, tryb domyślny IN, jako zmienne wiązane nie można używać wartości typu BOOLEAN, Metody wykonywania dynamicznego SQL Polecenia DML i DDL bez zmiennych powiązanych Polecenia DML ze znaną listą zmiennych powiązanych, Polecenia DQL. 3
4 Metoda nr 1 Metoda nr 1 CREATE OR REPLACE PROCEDURE tworz (nazwa_tab VARCHAR2, kolumny VARCHAR2) IS EXECUTE IMMEDIATE CREATE TABLE nazwa_tab ( kolumny ) ; / tworz( employees_new, id NUMBER PRIMARY KEY, nazwa VARCHAR2(20), pensja NUMBER ); CREATE OR REPLACE PROCEDURE tworz (nazwa_tab VARCHAR2, kolumny VARCHAR2) IS v_lan VARCHAR2(100) := CREATE TABLE nazwa_tab ( kolumny ) ; EXECUTE IMMEDIATE v_lan; / tworz( employees_new, id NUMBER PRIMARY KEY, nazwa VARCHAR2(20), pensja NUMBER ); Metoda nr 2 CREATE OR REPLACE PROCEDURE dodaj (nazwa_tab VARCHAR2, p_id NUMBER, p_nazwa VARCHAR2) IS EXECUTE IMMEDIATE INSERT INTO nazwa_tab VALUES (:1,:2) USING p_id, p_nazwa ; Jednowierszowe instrukcje - przykład CREATE FUNCTION pobierz (p_id NUMBER) RETURN departments%rowtype IS v_lan VARCHAR2(200); v_dep departments%rowtype; v_lan:= SELECT * FROM departments WHERE department_id=:p_id ; EXECUTE IMMEDIATE v_lan INTO v_dep USING p_id; RETURN v_dep; 4
5 Bloki anonimowe - przykład Metoda nr 3 CREATE FUNCTION zwrot RETURN NUMBER IS v_lan VARCHAR2(200):= DECLARE r_emp employees%rowtype; SELECT * INTO r_emp FROM employees WHERE employee_id=100; :zwr :=r_emp.salary*1.2; ; v_zwr NUMBER; EXECUTE IMMEDIATE v_lan USING OUT v_zwr; RETURN v_zwr; NDS działa tylko dla typów bazy danych, korzystając z kolekcji trzeba ja najpierw definiować w bazie, Operacje masowe na kolekcjach mogą być w NDS wykonywane tylko jako zawarte w blokach PL/SQL, DBMS_SQL nie obsługuje typów zdefiniowanych przez użytkownika, Pakiet DBMS_SQL Przykładowe funkcje pakietu Wprowadzony w Oracle 7, Służy do wykonywania dynamicznych zapytań SQL, Bardziej złożony niż NDS, jednak niezbędny w szczególnych przypadkach np. gdy lista SELECT jest nieznana, describe dbms_sql; - lista procedur dostępnych z pakietu DBMS_SQL, OPEN_CURSOR otwiera nowy kursor i zwraca jego ID, DBMS_SQL.OPEN_CURSOR RETURN INTEGER; CLOSE_CURSOR zamyka kursor, EXECUTE wykonuje kursor (podany przez ID) i zwraca liczbę przetworzonych wierszy, DBMS_SQL.EXECUTE ( c IN INTEGER) RETURN INTEGER; 5
6 Przykładowe funkcje pakietu Przykładowe funkcje pakietu PARSE dokonanie analizy i weryfikacji zapytania SQL, powiązanie z kursorem, przetwarzane jest dowolne zapytanie DML lub DDL, DBMS_SQL.PARSE ( c IN INTEGER, statement IN VARCHAR2, language_flag IN INTEGER); BIND_VARIABLE wiąże podane wartości ze zmiennymi w kursorze, DBMS_SQL.BIND_VARIABLE ( c IN INTEGER, name IN VARCHAR2, value IN <datatype>); FETCH_ROWS pobiera wiersze z kursora o danym ID, DBMS_SQL.FETCH_ROWS ( c IN INTEGER) RETURN INTEGER; Przykładowe funkcje pakietu IS_OPEN sprawdza czy podany kursor jest otwarty, DBMS_SQL.IS_OPEN ( c IN INTEGER) RETURN BOOLEAN; DEFINE_COLUMN definiuje kolumnę która ma być pobrana z kursora, DBMS_SQL.DEFINE_COLUMN ( c IN INTEGER, position IN INTEGER, column IN <datatype>); Przykład 1 usuwanie rekordów CREATE OR REPLACE FUNCTION usuwanie (p_tabela VARCHAR2) RETURN NUMBER IS v_id_kursor INTEGER; v_ile_usun NUMBER; v_id_kursor:=dbms_sql.open_cursor; DBMS_SQL.PARSE(v_id_kursor, DELETE FROM p_tabela, DBMS_SQL.NATIVE); v_ile_usun:=dbms_sql.execute(v_id_kursor); DBMS_SQL.CLOSE_CURSOR(v_id_kursor); RETURN v_ile_usun; 6
7 Przykład 2 Porównanie NDS i DBMS_SQL CREATE OR REPLACE PROCEDURE dodawanie (p_tabela VARCHAR2, p_id NUMBER, p_nazwa VARCHAR2) IS v_id_kursor INTEGER; v_ile_dod NUMBER; v_id_kursor:=dbms_sql.open_cursor; DBMS_SQL.PARSE(v_id_kursor, INSERT INTO p_tabela VALUES (:c_id, :c_name), DBMS_SQL.NATIVE); DBMS_SQL.BIND_VARIABLE(v_id_kursor, :c_id,p_id); DBMS_SQL.BIND_VARIABLE(v_id_kursor, :c_nazwa,p_nazwa); v_ile_dod:=dbms_sql.execute(v_id_kursor); DBMS_SQL.CLOSE_CURSOR(v_id_kursor); DBMS_OUTPUT.PUT_LINE(v_ile_dod); CREATE PROCEDURE insert_into_table ( table_name VARCHAR2, deptnumber NUMBER, deptname VARCHAR2, location VARCHAR2) IS stmt_str VARCHAR2(200); stmt_str := 'INSERT INTO ' table_name ' values (:deptno, :dname, :loc)'; EXECUTE IMMEDIATE stmt_str USING deptnumber, deptname, location; źródło: dokumentacja Oracle NDS Porównanie NDS i DBMS_SQL Typ obiektowy CREATE PROCEDURE insert_into_table ( table_name VARCHAR2, deptnumber NUMBER, deptname VARCHAR2, location VARCHAR2) IS cur_hdl INTEGER; stmt_str VARCHAR2(200); rows_processed BINARY_INTEGER; stmt_str := 'INSERT INTO ' table_name ' VALUES (:deptno, :dname, :loc)'; cur_hdl := dbms_sql.open_cursor; dbms_sql.parse(cur_hdl, stmt_str, dbms_sql.native); dbms_sql.bind_variable (cur_hdl, ':deptno', deptnumber); dbms_sql.bind_variable (cur_hdl, ':dname', deptname); dbms_sql.bind_variable (cur_hdl, ':loc', location); rows_processed := dbms_sql.execute(cur_hdl); dbms_sql.close_cursor(cur_hdl); DBMS_SQL źródło: dokumentacja Oracle Obsługa programowania obiektowego w PL/SQL została wprowadzona w wersji Oracle 8, Typy obiektowe w PL/SQL przypominają pakiet, mają specyfikację i ciało, 7
8 Specyfikacja Specyfikacja - przykład Zawiera atrybuty i deklaracje metod, Specyfikacja jest publiczna, CREATE [OR REPLACE] TYPE [schemat.]nazwa [AUTHID {CURRENT_USER DEFINER}] AS OBJECT (atrybut1 typ_danych, [metoda1]); CREATE OR REPLACE TYPE ksiegarnia AS OBJECT ( Id NUMBER, num_dod NUMBER, Cena NUMBER(10,2), Rok_wydania DATE, ); Atrybuty Atrybuty Musza znaleźć się przed metodami, Typem może być dowolny typ danych bazy, PL/SQL lub zdefiniowany w pakiecie; nie można używać tych, które dostępne są w PL/SQL ale nie obsługuje ich baza (np. PLS_INTEGER), Nie można nadawać ogranicznika NOT NULL, Należy zadeklarować przynajmniej jeden atrybut, Brak możliwości nadawania deklaracji domyślnych, Nie można używać %TYPE ani %ROWTYPE do atrybutów typów obiektowych, można do atrybutów obiektów, Atrybut może być typu innego obiektu, to pozwala na tworzenie złożonych typów obiektowych, 8
9 Metody Metody składowe Funkcje lub procedury zdeklarowane w specyfikacji, [STATIC MEMBER] PROCEDURE specyfikacja; [STATIC MEMBER CONSTRUCTOR] FUNCTION specyfikacja; [MAP ORDER] MEMBER FUNCTION specyfikacja; Można je wywoływać przy użyciu notacji bazującej na pozycjach lub nazwach, Parametry mogą mieć nazwy domyślne (DEFAULT), Można je przeciążać przy użyciu typu i liczby argumentów, Są wywoływane dla samych obiektów a nie typów obiektowych, Metody składowe Metody statyczne CREATE OR REPLACE TYPE obnizka AS OBJECT ( rabat NUMBER(10,4), cena NUMBER(10,2), MEMBER FUNCTION obn RETURN NUMBER); DECLARE v_o OBNIZKA :=obnizka(.1,65.00); v_war NUMBER(10); v_war:=v_o.obn; DBMS_OUTPUT.PUT_LINE(v_war); Są niezależne od egzemplarza obiektu, Do wywołania trzeba użyć typu obiektowego, a nie egemplarza, Szczególnie użyteczne w wersjach przed Oracle 9iR2 do definiowania konstruktorów definiowanych przez użytkownika, 9
10 Metody statyczne Konstruktory CREATE OR REPLACE TYPE obnizka AS OBJECT ( rabat NUMBER(10,4), cena NUMBER(10,2), STATIC FUNCTION nowa_cena ( p_cena IN NUMBER, p_rabat IN NUMBER DEFAULT.1) RETURN NUMBER); exec DBMS_OUTPUT.PUT_LINE(obnizka.nowa_cena(85)); Od wersji Oracle 9iR2, Służą do przesłonięcia konstruktorów predefiniowanych przez system lub tworzenia dodatkowych konstruktorów, Gdy typ obiektowy i konstruktor mają tę samą nazwę i liczbę atrybutów to nowy konstruktor zastępuje ten zdefiniowany przez system, Konstruktory CREATE OR REPLACE TYPE obnizka AS OBJECT ( rabat NUMBER(10,4), cena NUMBER(10,2), CONSTRUCTOR FUNCTION obnizka ( cena NUMBER) RETURN SELF AS RESULT); Deklarowanie i inicjowanie DECLARE v_p obnizka; v_p.cena:=85; DBMS_OUTPUT.PUT_LINE(v_p.cena); DECLARE v_p obnizka :=obnizka(null,null); v_p.cena:=85; DBMS_OUTPUT.PUT_LINE(v_p.cena); 10
11 Ciało typów obiektowych Ciało typów obiektowych Zawiera ciała metod typu obiektowego, CREATE [OR REPLACE] TYPE BODY [schemat.]nazwa {IS AS} [STATIC MEMBER] PROCEDURE ciało; [STATIC MEMBER CONSTRUCTOR] FUNCTION ciało; [MAP ORDER] MEMBER FUNCTION ciało; CREATE OR REPLACE TYPE BODY obnizka AS MEMBER FUNCTION obn RETURN NUMBER IS RETURN (cena*(1-rabat)); SELF MAP i ORDER Wskazuje bieżący egzemplarz obiektu, Jest on automatycznie deklarowany jako pierwszy parametr metod składowych (IN funkcje składowe, IN OUT procedury składowe), Używa się go obowiązkowo w konstruktorach definiowanych przez użytkownika, Konieczne również przy przekazywaniu bieżącego obiektu lub referencji do niego jako argumentu do innej procedury lub funkcji, Nie stosuje się w metodach statycznych, Pozwalają na porównanie dwóch obiektów, Mogą służyć do sortowania obiektów w bazie danych, W obiekcie może być tylko jedna metoda MAP lub ORDER, Nie może być obu metod jednocześnie, W przypadku braku ich definicji program zgłosi wyjątek, 11
12 MAP MAP - przykład Przekształca obiekt na typ umożliwiający sortowanie, Bardziej wydajna niż ORDER, Przyjmuje wyłącznie parametry SELF, a zwraca typ skalarny: DATE, NUMBER, VARCHAR2, CHAR, REAL, Porównaniu obj_1 > obj_2 odpowiada porównanie obj_1.map() > obj_2.map(), CREATE OR REPLACE TYPE rectangle_typ AS OBJECT ( len NUMBER, wid NUMBER, MAP MEMBER FUNCTION area RETURN NUMBER); CREATE OR REPLACE TYPE BODY rectangle_typ AS MAP MEMBER FUNCTION area RETURN NUMBER IS RETURN len * wid; END area; źródło: dokumentacja Oracle ORDER Przyjmuje jeden parametr typu obiektowego, Zwraca wartość typu NUMBER, Odpowiada na pytanie czy dany obiekt jest mniejszy, większy czy równy podanemu, Tak jak MAP jest wołana automatycznie gdy zaistnieje potrzeba porównania obiektów, ORDER - przykład CREATE OR REPLACE TYPE location_typ AS OBJECT (building_no NUMBER, city VARCHAR2(40), ORDER MEMBER FUNCTION match (l location_typ) RETURN INTEGER ); CREATE OR REPLACE TYPE BODY location_typ AS ORDER MEMBER FUNCTION match (l location_typ) RETURN INTEGER IS IF building_no < l.building_no THEN RETURN -1; ELSIF building_no > l.building_no THEN RETURN 1; ELSE RETURN 0; END IF; źródło: dokumentacja Oracle 12
13 ORDER - przykład Dziedziczenie DECLARE loc location_typ; secloc location_typ; a number; loc location_typ:=location_typ(300, 'San Francisco'); secloc location_typ :=location_typ(200, 'Redwood Shores'); a := loc.match(secloc); DBMS_OUTPUT.PUT_LINE('order (1 is greater, -1 is lesser):' a); Pozwala na przejmowanie przez typ obiektowy atrybutów i metod obiektowego typu nadrzędnego, CREATE OR REPLACE TYPE obnizka AS OBJECT ( rabat NUMBER(10,4), cena NUMBER(10,2), MEMBER FUNCTION obn RETURN NUMBER) ) INSTANTIABLE FINAL; źródło: dokumentacja Oracle Dziedziczenie Dziedziczenie INSTANTIABLE słowo oznacza że można tworzyć obiekty danego typu, NOT INSTANTIABLE gdy chcemy aby służył wyłącznie jako typ nadrzędny, wówczas można dziedziczyć jego atrybuty i metody, domyślnie INSTANTIABLE, FINAL oznacz że typ nie będzie miał typów pochodnych, gdy NOT FINAL można tworzyć typy pochodne, domyślnie FINAL, Typ bazowy tworzymy ze słowami kluczowymi: INSTANTIABLE NOT FINAL; Typ pochodny CREATE OR REPLACE TYPE nowy UNDER typ_bazowy ( ) INSTANTIABLE FINAL; 13
14 Dziedziczenie Modyfikowanie i usuwanie typów Zastępowanie metod typu bazowego w typie pochodnym OVERRIDING MEMBER PROCEDURE obn Typ bazowy i typy pochodne są w relacji jeden do wielu, typ bazowy może być powiązany z wieloma pochodnymi, zaś pochodny może mieć jeden typ bazowy, ALTER TYPE nazwa COMPILE [SPECIFICATION BODY]; Gdy brak SPECIFICATION lub BODY obie części są kompilowane razem, Wprowadzenie atrybutu: ALTER TYPE nazwa; ADD ATTRIBUTE nazwa_arg typ_danych; Usunięcie atrybutu: ALTER TYPE nazwa; DROP ATTRIBUTE nazwa_arg CASCADE; Modyfikowanie i usuwanie typów Modyfikowanie i usuwanie typów Dodanie metody do specyfikacji: ALTER TYPE nazwa ADD CONSTRUCTOR FUNCTION nazwa (parametry) RETURN SELF AS RESULT CASCADE; Usunięcie metody: ALTER TYPE nazwa DROP CONSTRUCTOR FUNCTION nazwa (parametry) RETURN SELF AS RESULT CASCADE; Usuwanie typów obiektowych: DROP TYPE nazwa; DROP TYPE nazwa FORCE; 14
15 WYKORZYSTANA LITERATURA J. Price, Oracle Database 11g i SQL. Programowanie. Helion, S. Urman, R. Hardman, M. McLaughlin, Oracle Database 10g. Programowanie w języku PL/SQL. Helion,
Oracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -
Bardziej szczegółowoPakiety podprogramów Dynamiczny SQL
Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL
Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL.
Bardziej szczegółowoFunkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 3. Zasięg zmiennych. Zasięg zmiennych
Plan wykładu BAZY DANYCH II WYKŁAD 3 Zasięg zmiennych Zmienne powiązane Instrukcje warunkowe Pętle Pobieranie danych SQL w PL/SQL Rekordy dr inż. Agnieszka Bołtuć Zasięg zmiennych Zmienna jest dostępna
Bardziej szczegółowoJęzyk PL/SQL Procedury i funkcje składowane
Język PL/SQL Procedury i funkcje składowane Podprogramy, procedury i funkcje składowane, typy argumentów, wywoływanie procedur i funkcji, poziomy czystości funkcji 1 Podprogramy Procedury (wykonują określone
Bardziej szczegółowoWyzwalacz - 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ółowow 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ółowoPakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki.
Pakiety Pakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki. Pakiet składa się ze: specyfikacji (interfejsu) i ciała (implementacji). W specyfikacji mieszczą
Bardziej szczegółowoBloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Bardziej szczegółowoPODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
Bardziej szczegółowoProcedury i funkcje składowane
Procedury i funkcje składowane Zmienne podstawienia i zmienne wiązane, podprogramy, procedury składowane, typy argumentów, wywoływanie procedur, funkcje składowane, poziomy czystości funkcji, funkcje tablicowe
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 2. Bloki. Struktura bloku
Plan wykładu BAZY DANYCH II WYKŁAD 2 Bloki, struktura, sekcje Bloki anonimowe Tworzenie i uruchamianie Identyfikatory Literały Typy danych dr inż. Agnieszka Bołtuć Bloki Struktura bloku W programach pisanych
Bardziej szczegółowoMonika 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ółowoBazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 5. Kolekcje. Tablice asocjacyjne Kolekcje Tablice asocjacyjne VARRAY Tablice zagnieżdżone
Plan wykładu Kolekcje Tablice asocjacyjne VARRAY Tablice zagnieżdżone BAZY DANYCH II WYKŁAD 5 dr inż. Agnieszka Bołtuć Kolekcje Tablice asocjacyjne Używane w celu gromadzenia danych tego samego typu, Rekordy
Bardziej szczegółowoProgramowanie 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ółowoKOLEKCJE - 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ółowoMateriały. Technologie baz danych. Plan wykładu Kursory. Wykład 5: Kursory jawne. Podprogramy. Kursory jawne. Kursory niejawne
Materiały dostępne są na stronie: Materiały Technologie baz danych aragorn.pb.bialystok.pl/~gkret Wykład 5: Kursory jawne. Podprogramy. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka
Bardziej szczegółowoPL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2 Złożone typy danych RECORD
Bardziej szczegółowoOracle11g: 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ółowoZaawansowane 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ółowo15. 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ółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 5 Wprowadzenie Tworzenie i wykonywanie procedur i funkcji Instrukcja RETURN Parametry procedur i funkcji oraz ich przesyłanie Metadane
Bardziej szczegółowoPRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Bardziej szczegółowoPodprogramy. Rozdział 11 Procedury i funkcje składowane
Podprogramy Rozdział 11 Procedury i funkcje składowane Podprogramy, procedury składowane, funkcje składowane, wywoływanie podprogramów Przez podprogramy rozumiemy głównie: procedury (wykonują określone
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 4. Procedury i funkcje składowane
Język PL/SQL. Rozdział 4. Procedury i funkcje składowane Podprogramy, procedury składowane, funkcje składowane, wywoływanie podprogramów. (c) Instytut Informatyki Politechniki Poznańskiej 1 Podprogramy
Bardziej szczegółowoOracle11g: 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ółowoProcedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1
Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane
Bardziej szczegółowoWyzwalacze. Anna Fiedorowicz Bazy danych 2
Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych
Bardziej szczegółowoJęzyk PL/SQL Pakiety podprogramów
Język PL/SQL Pakiety podprogramów Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora) 1 Pakiety Pakiet (ang. package) grupuje powiązane
Bardziej szczegółowoBloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Bardziej szczegółowoDECLARE <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ółowoObiektowe 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ółowo1 Wprowadzenie do bloków nazwanych 1. 2 Parametry 2. 3 Procedury i funkcje 3. 4 Pakiety 6. 5 Podsumowanie Źródła 10
Plan wykładu Spis treści 1 Wprowadzenie do bloków nazwanych 1 2 Parametry 2 3 Procedury i funkcje 3 4 Pakiety 6 5 Podsumowanie 10 6 Źródła 10 1 Wprowadzenie do bloków nazwanych Rodzaje bloków w PL/SQL
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 7. Pakiety. Zalety pakietów 2011-01-13
Plan wykładu BAZY DANYCH II WYKŁAD 7 Pakiety: specyfikacja, ciało, Wywoływanie elementów pakietów, Przeciążanie podprogramów z pakietów, Inicjowanie pakietów, Deklaracje uprzedzające, Funkcje pakietowe
Bardziej szczegółowoProcedury składowane. Funkcje vs. procedury Funkcja. Procedura. zazwyczaj ma parametry tylko typu IN; można wywoływać z poziomu
Procedury składowane Kolejnym typem programu języka PL/SQL są procedury składowane. Procedury mogą posiadać parametry typu IN, OUT lub IN OUT. Umożliwiają wykonanie operacji na danych w bazie, mogą też
Bardziej szczegółowoUżywany kiedy pełna treść instrukcji SQL jest nieznana przed uruchomieniem programu.
Plan wykładu Spis treści 1 Dynamiczny SQL 1 2 Wyzwalacze 2 3 Podsumowanie 9 4 Źródła 9 1 Dynamiczny SQL Dynamiczny SQL Dynamiczny SQL - technika programowania umożliwiająca generowanie instrukcji SQL dynamicznie
Bardziej szczegółowoDECLARE 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ółowoPlan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,
Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających
Bardziej szczegółowoSkładowane procedury i funkcje
Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.
Bardziej szczegółowoDeklarowanie kursora. CURSOR nazwa [ ( param1 typ1 [,param2 typ2]... ) ] [RETURN typ zwracany] IS zapytanie SQL;
Kursory Każde zapytanie SQL umieszczone w programie PLSQL jest wykonywane w tzw. obszarze roboczym lub inaczej obszarze kontekstu. PLSQL wykorzystuje ten obszar do przechowywania danych otrzymanych w wyniku
Bardziej szczegółowoOracle10g: Programowanie w PL/SQL
Oracle10g: Programowanie w PL/SQL OPIS: Szkolenie dotyczy użytkowników Oracle8i, Oracle9i i Oracle10g. Ten kurs pozwala zrozumieć zalety tego potężnego narzędzia programowania do PL/SQL. Studenci uczą
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 4. Co to jest kursor? Rodzaje kursorów
Plan wykładu Kursory: deklaracja, otwieranie, pobieranie danych, zamykanie Kursory: atrybuty Kursory: pętle, rekordy Kursory z parametrami BAZY DANYCH II WYKŁAD 4 dr inż. Agnieszka Bołtuć Co to jest kursor?
Bardziej szczegółowoJę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ółowoKolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle
Rozszerzenie obiektowe w SZBD Oracle Cześć 2. Kolekcje Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Malinowski Nowak Kowalski tablica zagnieżdżona (ang.
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Kusory Wprowadzenie Kursory użytkownika Kursory domyślne Zmienne kursora Wyrażenia kursora - 2 - Wprowadzenie Co to jest kursor?
Bardziej szczegółowo3 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ółowoCheatsheet PL/SQL Andrzej Klusiewicz 1/9
Declare y integer; z varchar2(50); d date; null; Declare x integer:=10; null; x integer; x:=10; dbms_output.put_line('hello world'); for x in 1..10 loop Deklaracja 4 zmiennych. Jednej typu rzeczywistego,
Bardziej szczegółowoProgramowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie
Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną
Bardziej szczegółowoPrzykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;
Temat: Funkcje, procedury i wyzwalacze. Oprócz tabel i widoków w bazach danych możemy tworzyć własne funkcje, procedury i specjalny typ procedur, które będą automatycznie wywoływanie przez MySQL w memencie
Bardziej szczegółowoJęzyk SQL. Rozdział 9. Język definiowania danych DDL, część 2.
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji
Bardziej szczegółowoPlan wykładu PL/SQL. PL/SQL - historia TWORZENIE APLIKACJI BAZODANOWYCH
Plan wykładu 2 TWORZENIE APLIKACJI BAZODANOWYCH Wykład 2: Wprowadzenie do PL/SQL: bloki anonimowe, zmienne, kursory Wprowadzenie do PL/SQL Bloki Podstawowe składowe języka Zmienne i stałe Kursory Małgorzata
Bardziej szczegółowoRef. 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ółowoLiteratura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska
Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion Autor: Joanna Karwowska SQL zapewnia obsługę: zapytań - wyszukiwanie danych w bazie, operowania danymi - wstawianie, modyfikowanie
Bardziej szczegółowoBazy 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ółowoPlan 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ółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 7 Dynamiczny SQL i PL/SQL Pierwotny dynamiczny SQL Pierwotny dynamiczny DDL Pierwotny dynamiczny DML i SELECT Pakiet DBMS_SQL Transakcje
Bardziej szczegółowoPawel@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ółowoD D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?
D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się
Bardziej szczegółowoProcedury Funkcje Pakiety. Tworzenie procedury
Podprogramy tworzy się za pomocą instrukcji CREATE. Tworzenie procedury Składnia CREATE [OR REPLACE] PROCEDURE nazwa_procedury [(param1 [IN OUT IN OUT] typ_danych [:= DEFAULT wyrażenie], param2 [IN OUT
Bardziej szczegółowoE.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze
Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie
Bardziej szczegółowoPlan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. Użytkownicy i schematy (1) Użytkownicy i schematy (2) baza danych: ZESP99
Plan ćwiczenia Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych Użytkownicy i schematy bazy danych. Uwierzytelnianie i autoryzacja. Przywileje systemowe i obiektowe. Role. Synonimy. Uprawnienia,
Bardziej szczegółowoBlaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie
Bardziej szczegółowo1. ELEMENTY JĘZYKA PL/SQL
1. ELEMENTY JĘZYKA PL/SQL Aplikacje korzystające z PL/SQL będącego proceduralnym rozszerzeniem SQL mogą wykonywać procedury i funkcje języka PL/SQL składowane w bazie danych oraz wysyłać własne programy
Bardziej szczegółowoĆwiczenia laboratoryjne nr 11 Bazy danych i SQL.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie
Bardziej szczegółowoBAZA DANYCH SIECI HOTELI
Paulina Gogół s241906 BAZA DANYCH SIECI HOTELI Baza jest częścią systemu zarządzającego pewną siecią hoteli. Składa się z tabeli powiązanych ze sobą różnymi relacjami. Służy ona lepszemu zorganizowaniu
Bardziej szczegółowoIndeksy. Indeks typu B drzewo
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
Bardziej szczegółowoObiektowe 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ółowoPaweł 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ółowoWykład 5. SQL praca z tabelami 2
Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,
Bardziej szczegółowoModelowanie wymiarów
Wymiar Modelowanie wymiarów struktura umożliwiająca grupowanie danych z tabeli faktów implementowana jako obiekt bazy danych DIMENSION wykorzystanie DIMENSION zaawansowane przepisywanie zapytań (ang. query
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Kolekcje Operacje na kolekcjach Testowanie kolekcji Kolekcje w bazie danych Funkcje tabelaryczne Kolekcje wielopoziomowe - 2 -
Bardziej szczegółowoSQL :: Data Definition Language
SQL :: Data Definition Language 1. Zaproponuj wydajną strukturę danych tabela) do przechowywania macierzy o dowolnych wymiarach w bazie danych. Propozycja struktury powinna zostać zapisana z wykorzystaniem
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 8. Wyzwalacze. Wyzwalacze
Plan wykładu BAZY DANYCH II WYKŁAD 8 Wyzwalacze: zalety, rodzaje, tworzenie, Wyzwalacze DML, Wyzwalacze zastępujące, Wyzwalacze systemowe, Tabele mutujące, Wyzwalacze złożone, Wyzwalacze a SQL Developer,
Bardziej szczegółowoLaboratorium 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ółowoWykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Bardziej szczegółowoObiektowe bazy danych
Obiektowe bazy danych Obiektowo-relacyjne bazy danych Wykład prowadzi: Tomasz Koszlajda Obiektowo-relacyjne bazy danych Ewolucja rozszerzeń relacyjnego modelu danych: Składowanie kodu procedur w bazie
Bardziej szczegółowoI. 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ółowoSystemowe aspekty baz
Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select
Bardziej szczegółowoPaździernik 2015. Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska. Systemy baz danych - wykład III. dr inż.
1/40 Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Październik 2015 2/40 Plan wykładu Uzupełnienie projektu fizycznego Czym jest PL/SQL Bloki w PL/SQL Wykorzystanie 3/40 Projekt
Bardziej szczegółowoSQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska
SQL TECHNOLOGIE BAZ DANYCH Wykład 5: Język DDL i DML. SQL (ang. StructuredQueryLanguage) strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych oraz do umieszczania i pobierania
Bardziej szczegółowoPL/SQL. Zaawansowane tematy PL/SQL. Piotr Medoń
PL/SQL Zaawansowane tematy PL/SQL Piotr Medoń Cele Omówienie transakcji bazodanowych Omówienie obsługi wyjątków Zarządzanie perspektywami Tworzenie i usuwanie sekwencji Budowa wyzwalaczy 2 Transakcje bazodanowe
Bardziej szczegółowoProjektowanie systemów baz danych
Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do
Bardziej szczegółowoInstrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.
Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN
Bardziej szczegółowoWykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
Bardziej szczegółowoRelacyjne 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ółowoZASTOSOWANIE PROCEDUR, FUNKCJI I PAKIETÓW
ZASTOSOWANIE PROCEDUR, FUNKCJI I PAKIETÓW Położenie podprogramów Jak wiemy, podprogramy i pakiety jako bloki nazwane, mogą być składowane w słowniku danych. Podprogram najpierw tworzy się za pomocą polecenia
Bardziej szczegółowoTworzenie 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ółowoZbiór pytań nr 2. 1 Tabela DEPARTMENTS ma następującą strukturę:
Zbiór pytań nr 2 1 Tabela DEPARTMENTS ma następującą strukturę: Nazwa kolumny Typ danych Uwagi dept_id NUMBER(4) NOT NULL, PRIMARY KEY dept_name VARCHAR2(30) mgr_id NUMBER(6) location_id NUMBER(4) Które
Bardziej szczegółowoOracle 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ółowoJęzyk PL/SQL. Rozdział 6. Procedury wyzwalane
Język PL/SQL. Rozdział 6. Procedury wyzwalane Procedury wyzwalane, cele stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie
Bardziej szczegółowoProcedury wyzwalane. Rozdział 13. Procedury wyzwalane. Cele stosowania procedur wyzwalanych. Definiowanie procedury wyzwalanej DML
Procedury wyzwalane Rozdział 13 Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie
Bardziej szczegółowostrukturalny 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ółowoWykład 9. Pakiety w języku PL/SQL
Wykład 9. Pakiety w języku PL/SQL Pakiety (ang. packages): podobnie jak podprogramy, zaliczamy do bloków nazwanych języka PL/SQL, zostały zaczerpnięty z języka ADA, lecz w stosunku do pakietu tego języka
Bardziej szczegółowoOdnawialne Źródła Energii I rok. Tutorial PostgreSQL
Tutorial PostgreSQL 1. Instalacja na własnym komputerze: a. Zainstaluj program ze strony: https://www.postgresql.org/download/ Wersja odpowiednia dla systemu operacyjnego Linux, Mac, Windows Przy pierwszym
Bardziej szczegółowoSQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE
Instrukcje SQL dzielimy na następujące kategorie: 1) Instrukcje języka manipulowania danymi (DML) SELECT, INSERT, UPDATE, DELETE, SET TRANSACTION, EXPLAIN PLAN 2) Instrukcje języka definicji danych DDL
Bardziej szczegółowoSystemy 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ółowoHurtownia Świętego Mikołaja projekt bazy danych
Aleksandra Kobusińska nr indeksu: 218366 Hurtownia Świętego Mikołaja projekt bazy danych Zaprezentowana poniżej baza jest częścią większego projektu bazy danych wykorzystywanej w krajowych oddziałach wiosek
Bardziej szczegółowo