Elastyczny system uprawnień w bazie danych PostgreSQL

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

Download "Elastyczny system uprawnień w bazie danych PostgreSQL"

Transkrypt

1 Rozdział 40 Elastyczny system uprawnień w bazie danych PostgreSQL Streszczenie. W niniejszym rozdziale zostanie przedstawiony dynamiczny system obsługi uprawnień do obiektów bazodanowych zrealizowany w całości na poziomie bazy danych. System ten zapewnia dużą przeźroczystość uprawnień dla aplikacji przy zachowaniu akceptowalnej wydajności. System ten umożliwia kontrolę uprawnień na poziomie pojedynczych wierszy oraz zapewnia mechanizmy kontroli wywołań funkcji oraz procedur wbudowanych. Uprawnienia w tym systemie są definiowane za pomocą predykatów. 1 Wstęp Na Uniwersytecie Łódzkim jest tworzony zintegrowanego system zarządzania rektoratem. W celu zapewnienia odpowiedniego poziomu bezpieczeństwa był potrzebny system uprawnień, który pozwoliłby na określenie dla każdego użytkownika systemu oddzielnych podzbiorów dostępnych danych. Podzbiór taki może obejmować dowolną część rekordów z poszczególnych tabel. Zdecydowano, że uprawnienia będą sprawdzane po stronie bazy danych. Pozwala to na zapewnienie spójności danych, chroni przed przypadkowym nieuwzględnieniem uprawnień przez programistę oraz stanowi dodatkowy poziom ochrony. Do realizacji projektu został wybrany system zarządzania bazą danych(szbd) PostgreSQL [2]. Jest to zaawansowany system zarządzania bazą danych, oferujący wszystkie podstawowe funkcje, takie jak widoki, wyzwalacze, transakcje i podzapytania. Ten SZBD ma także kilka unikalnych cech, takich jak możliwość modyfikacji zapytań przed ich wykonaniem oraz obsługę wielu języków proceduralnych. Dialekt SQL obsługiwany przez system zarządzania bazą danych PostgreSQL jest w dużym stopniu zgodny z dialektem Oracle oraz ze standardem języka SQL. 2 Rozwiązania obsługi uprawnień Zarządzanie prawami dostępu do danych jest niezwykle istotną, niepomijalną częścią każdej aplikacji. umożliwiającej dostęp do danych przez wielu użytkowników o różnym zakresie uprawnień. W zależności od lokalizacji procedur zarządzających kontrola Jarosław Pychowski Uniwersytet Łódzki, Wydział Matematyki, ul. S. Banacha 22, Łódź jpp@math.uni.lodz.pl

2 J. Pychowski uprawnień może być zrealizowana na poziomie aplikacji lub być wbudowana w bazę danych. Umieszczenie systemu uprawień po stronie aplikacji, pomimo wielu zalet, takich jak umożliwienie pewnej niezależności od bazy danych oraz łatwość implementacji (system w całości jest zbudowany w jednej technologii) ma kilka zasadniczych wad: nie wykorzystuje możliwości oferowanych przez konkretne systemy zarządzania bazą danych, uprawnienia są zależne od stosowanego interfejsu dostępowego, duplikuje część funkcjonalności bazy danych na poziomie aplikacji, podatne na błędy w aplikacji. Zależność od stosowanego interfejsu dostępowego objawia się niedziałaniem uprawnień np. w przypadku połączenia się do bazy za pomocą aplikacji dostarczonej przez producenta systemu zarządzania bazą danych. Szczególnie istotna jest podatność na błędy w aplikacji. Błąd w pozornie niezwiązanej części aplikacji może prowadzić do złamania zabezpieczeń. Próbą rozwiązania tych problemów jest wydzielenie w ramach aplikacji warstwy pośredniczącej w realizacji zapytań do bazy danych. Niestety nie zabezpiecza to przed wykorzystaniem narzędzi, które nie korzystają z tej warstwy. Przykładem takiego narzędzia może być aplikacja raportująca. Umieszczenie uprawnień po stronie systemu zarządzania bazą danych pozwala na uniknięcie wszystkich wcześniej wymienionych niedogodności. Istnieją cztery główne metody implementacji systemu uprawnień po stronie bazy danych: wykorzystanie funkcji wbudowanych, proste wykorzystanie statycznych widoków, etykietowanie wierszy (ang. security labels), wykorzystanie predykatów. Mechanizmy potrzebne do zaimplementowania trzech pierwszych metod są dostępne praktycznie w każdym systemie zarządzania bazą danych, który oferuje obsługę procedur wbudowanych oraz widoków. Jako przykłady takich baz danych można wymienić: Firebird [4], IBM DB2 [5], Microsoft SQL Server [6], Oracle [7], PostgreSQL[2], Sybase ASE[8]. Część z powyższych baz danych ma wbudowaną funkcjonalność definiowania uprawnień na poziomie wierszy za pomocą etykiet bez potrzeby pisania własnych rozwiązań. 2.1 Uprawnienia zaimplementowane w bazie danych realizowane za pomocą funkcji Rozwiązanie to polega na udostępnieniu interfejsu programistycznego złożonego tylko i wyłącznie z procedur oraz funkcji wbudowanych. Bezpośredni dostęp do tabel jest zabroniony. Do zalet takiego rozwiązania można zaliczyć pełną kontrolę nad wykonywanymi zapytaniami, dużą wydajność oraz możliwość dokładnego definiowania uprawnień użytkowników bazy. Aby zmienić uprawnienia wystarczy nadać lub odebrać uprawnienia do wykonywania konkretnej procedury. Jako wady można wymienić umieszczenie znaczącej części logiki aplikacji po stronie systemu zarządzania bazą danych (groźba zbytnego uzależnienia się od producenta) oraz nieprzezroczystość rozwiązania. 412

3 Elastyczny system uprawnień w bazie danych PostgreSQL Każde zapytanie musi być opakowane w odpowiednią procedurę, co prowadzi do braku elastyczności. 2.2 Uprawnienia zaimplementowane jako proste widoki Rozwiązanie to polega na umieszczeniu w bazie danych widoków ograniczających dostęp do danych, do których są przydzielane uprawnienie. Uprawnienia działają w sposób przezroczysty dla aplikacji. Nie wymaga od użytkownika ustawiania kontekstu. Pozwala, podobnie jak poprzednia metoda, definiowanie ograniczeń na widoku będącym złączeniem dwóch lub więcej tabel lub zwracającego tylko część kolumn tabeli. Dzięki zastosowaniu widoków istnieje także możliwość tworzenia na podstawie kilku widoków wydajnych zapytań do bazy danych. Niestety rozwiązanie takie jest statyczne, z poziomu aplikacji nie ma możliwości łatwej zmiany uprawnień po stworzeniu widoków. 2.3 Uprawnienia zaimplementowane za pomocą etykiet Rozwiązanie to jest znaczącym uogólnieniem poprzednich dwu metod. Pozwala ono na przydzielanie uprawnień do pojedynczych wierszy bez konieczności konstruowania skomplikowanych warunków. Polega ono na zmodyfikowaniu schematu bazy danych poprzez: dodanie do każdej tabeli dodatkowej kolumny zawierającej listę etykiet określających uprawnienia, dodanie do bazy danych tabel mapujących etykiety na odpowiednie role, dodanie do bazy danych widoków ograniczających dostęp do danych. Widoki rozpatrywane w tej metodzie są to widoki na jedną tabelę, które w klauzuli WHERE zawierają tylko i wyłącznie warunek wyboru wierszy na podstawie przydzielonych im etykiet oraz uprawnień użytkownika. Zazwyczaj zapytanie w definicji widoku jest postaci: SELECT * FROM tabela WHERE daj_etykiete_uzytkownika()=any(etykiety) Rozwiązanie to w sposób przezroczysty dla użytkownika pozwala na ograniczenie jego uprawnień. Istotną jego wadą jest konieczność sprawdzania dla każdego wiersza, czy w liście etykiet występują etykiety związane z bieżącym użytkownikiem, co prowadzi do problemów wydajnościowych w przypadku duże ilości etykiet lub dużego rozmiaru danych. Rozwiązanie tego typu zostało dokładnie opisane w [3] oraz [9]. Niektóre rozwiązania bazujące na etykietach wymagają od użytkownika ustalania kontekstu, w którym pracuje. 2.4 Uprawnienia zaimplementowane za pomocą predykatów Rozwiązanie to uzupełnia się z uprawnieniami zaimplementowanymi za pomocą etykiet. Pola na wprowadzeniu mechanizmów umożliwiających dodanie do zapytań dodatkowych warunków określających, które wiersze z tabeli może wybrać dane. Przykładowo, jeśli użytkownik wykona zapytane: SELECT * FROM tabela WHERE k1 IN (1, 3, 5) 413

4 J. Pychowski oraz ma uprawnienie tylko i wyłącznie do wierszy o wartościach w kolumnie k1 większych od 3 to zapytanie przed wykonaniem zostanie przekształcone do postaci: SELECT * FROM tabela WHERE k1 IN (1, 3, 5) AND k1>3 Metoda ta cechuję się dużą wydajnością przy dużych zbiorach danych oraz jest przezroczysta dla aplikacji. Dużą zaletą, jak i wadą tego rozwiązania jest ustalanie dostępu na podstawie predykatów. Z jednej strony pozwala na rezygnację z definiowania uprawnień dla każdego wiersza osobno, a z drugiej często prowadzi do konieczności budowania bardzo skomplikowanych warunków występujących w uprawnień (często z podzapytaniami). Rozwiązanie bazujące na funkcji, która generuje dodatkowe fragmenty zapytań jest zaimplementowane w bazie danych Oracle w pakiecie DBMS_RLS, którego dokładny opis można znaleźć w dokumentacji bazy danych Oracle. Istotne jest, że w celu uaktywnienia obsługi uprawnień albo użytkownik musi wywołać odpowiednią funkcję ustalającą tzw. kontekst albo funkcja ta musi być wywołana w wyzwalaczu na zdarzeniu LOGIN. 3 Założenia systemu zarządzania uprawnieniami Podczas projektowania zintegrowanego systemu zarządzania rektoratem dużo uwagi poświęcono kontroli dostępu do danych, który musiał zapewnić: możliwie dużą elastyczność przy definiowaniu uprawnień, możliwość zmiany uprawnień w zależności od używanej w danym momencie funkcjonalności aplikacji, system uprawnień powinien działać w sposób przezroczysty dla aplikacji, spadek wydajności powinien być możliwie najmniejszy. Szczegółowy opis stworzonego systemu znajduje się w [1]. Warto nadmienić, że zdecydowano się skorzystać z widoków na tabele oraz przyjąć jako warunek ograniczający (predykat) kompletną zawartość klauzuli WHERE. Jako kompletną definicję uprawnień dla konkretnej tabeli przyjęto jej nazwę oraz predykat. Rozwiązanie takie, pomimo obaw zespołu, okazało się wystarczająco wydajne w większości przypadków. System ten zawodził w właściwie tylko w jednej sytuacji: warunki występujące w uprawnieniach lub zapytanie SQL były skomplikowane. Na szczęście zarówno w systemie zarządzania rektoratem, na potrzeby którego powstał system uprawnień, jak i większości projektów tak skomplikowane zapytania podczas normalnej pracy systemu (pomijając podsystemy raportujące) są stosunkowo rzadko używane. Problemy z wydajnością wynikały ze definiowania warunków uprawnień tylko w zakresie definiowania warunku ograniczającego dostęp do wierszy konkretnej tabeli (klauzula WHERE). Rozwiązanie takie, pomimo swojej prostoty wymaga stosowania podzapytań, co często prowadziło do sytuacji, w której optymalizator bazy danych traktował podzapytanie jako czarną skrzynkę. Podczas planowania wykonania podzapytanie nie było przesuwane do listy tabel (FROM), tylko pozostawało w klauzuli WHERE. Było to związane z przekroczeniem dopuszczalnego stopnia zagnieżdżenia podzapytań, do którego zapytanie jest spłaszczane oraz wielokrotne wykonanie podzapytania w czasie realizacji jednego zapytania do bazy. Przykładowo zapytanie: SELECT * FROM widok; Wykonane na widoku systemu uprawnień zdefiniowanego następującym poleceniem: 414

5 Elastyczny system uprawnień w bazie danych PostgreSQL CREATE VIEW widok AS SELECT * FROM tabela WHERE t2_id IN ( SELECT id FROM t2 WHERE war) Jeśli założymy na potrzeby tego przykładu, że dopuszczalna głębokość podzapytań jest równa 0 to optymalizator zaplanuje wykonanie tego zapytania następująco: Zamiast: SELECT * FROM tabela WHERE t2_id IN ( SELECT id FROM t2 WHERE war) SELECT * FROM tabela t, t2 WHERE t.t2_id = t2.id AND war Rozwiązaniem tego problemu mogłoby być nie tyle definiowanie uprawnień w klauzul WHERE widoku, ale zdefiniowanie całego widoku ręcznie korzystając z wiedzy na temat danych zawartych bazie, zoptymalizowanie zapytania. W przypadku przedstawionego przykładu definicja widoku byłaby następująca (w typowym przypadku): CREATE VIEW widok AS SELECT t.* FROM tabela t, t2 WHERE t.t2_id = t2.id AND war Zmiana taka pozwoliłaby także rozwiązać problem niskiej wydajności skomplikowanych zapytań. Zapytanie takie byłoby zmodyfikowane tak, aby uwzględniało ograniczenia wynikające z uprawnień, zoptymalizowane, a następnie użyte do stworzenia widoku. Oczywiście podejście takie (połączenie zapytania i uprawnień w jedno) jest sensowne tylko w przypadku, gdy zapytanie jest bardzo skomplikowane. W innych sytuacjach poprzez ręczną modyfikację zapytania nie uzyskamy wzrostu wydajności w porównaniu z rozwiązaniem omówionym w [1]. 4 Budowa systemu obsługi uprawnień Omawiany w niniejszym rozdziale system jest innym w stosunku do [1] podejściem do zdefiniowanego powyżej problemu. System ten jest złożony z trzech zasadniczych części: definicje uprawnień, procedury ładowania uprawnień do bazy danych, procedury wbudowane w bazę danych. W dalszej części zastaną one omówione dokładniej. 415

6 J. Pychowski 4.1 Definicje uprawnień Na definicje uprawnień składa się zestaw plików XML-owych opisujących konkretne obiekty, do których są przydzielane uprawnienia, główny plik konfiguracyjny oraz definicje parametrów globalnych. Wszystkie te dokumenty są opisane przez schematy XML Schema. Zgodność dokumentów ze schematami jest sprawdzana przed rozpoczęciem ładowania uprawnień do bazy danych. Dokument definiujący uprawnienia od obiektu zawiera następujące informacje: typ obiektu, nazwę, nazwę skróconą (nazwę obiektu w bazie danych) opcje aplikacji, w których występuje, definicje parametrów definicję treści obiektu (to pole ma różne znaczenie w zależności od rozpatrywanego typu obiektu). System dopuszcza następujące typy obiektów: tabela widok na tabelę zgodny z ideą z pracy [1], widok widok realizujący propozycję opisaną wcześniej, funkcja uprawnienia są definiowane do funkcji wbudowanej. Niezwykle istotna jest możliwość parametryzacji wszystkich obiektów definiowanych przez uprawnienia. Parametry można podzielić na dwie grupy. Pierwszą stanowią parametry generowane przez system na podstawie pewnego wyrażenia, które jest wykonywane w momencie tworzenia obiektu w bazie danych. Drugą są parametry przydzielane przez administratora aplikacji z puli dopuszczalnych parametrów (mogą one być wypisane w pliku opisu obiektu lub wynikiem działania zapytania SQL-owego). Umożliwia to łatwą modyfikację uprawnień pojedynczego użytkownika z poziomu aplikacji bez konieczności nadawania bardzo szerokich uprawnień bazodanowych administratorowi aplikacji. Poniżej znajduje się przykładowy plik definicji obiektu: <?xml version="1.0" encoding="utf-8"?> <obiekt> <typ>widok</typ> <nazwa>testowy obiekt</nazwa> <nazwa_skrocona>test</nazwa_skrocona> <opcje> <opcja> <modul>a</modul> <pakiet>p</pakiet> <opcja>o2</opcja> </opcja> </opcje> <parametry> <parametr> <nazwa>param</nazwa> <generator>current_user</generator> </parametr> <parametr> <nazwa>param2</nazwa> <wartosci> <wartosc>1</wartosc> <wartosc>2</wartosc> <wartosci> </parametr> </parametry> 416

7 Elastyczny system uprawnień w bazie danych PostgreSQL <definicja> SELECT * FROM t WHERE pole=<parametr>param</parametr> </definicja> </obiekt> Istnieje możliwość wydzielenia definicji parametrów występujących w dużej ilości obiektów do osobnych plików (parametry globalne). Istotne jest, że wszystkie parametry muszą być jawnie zdefiniowane. Podejście takie uniezależnia definicje uprawnień od wersji oprogramowania obsługującego uprawnienia. Jest to szczególnie istotne w środowisku, gdzie uprawnienia mogą definiować programiści podczas tworzenia aplikacji. Ostatnim plikiem, który jest istotny dla działania systemu uprawnień jest plik konfiguracyjny (także napisany w XML-u). Plik ten zawiera kilka opcji konfiguracyjnych (istotnych dla implementacji np. sposób pobierania klucza głównego z tabeli zawierającej oraz polecenia ładujące pliki z parametrami globalnymi oraz obiektami. Pliki, które nie zostaną wymienione nie zostaną przetworzone. Rozwiązanie takie umożliwia przygotowanie w łatwy sposób kilku profili uprawnień dzielących ze sobą część definicji obiektów. co jest istotne na przykład w procesie testowania aplikacji. 4.2 Procedury ładowania uprawnień do bazy danych Procedury ładowania działają zgodnie z następującym schematem: 1) Załadowanie pliku konfiguracyjnego oraz jego przetworzenie 2) Załadowanie opisów parametrów globalnych 3) Zweryfikowanie dokumentów z definicjami obiektów 4) Załadowanie do tabel systemu uprawnień definicji obiektów (utworzenie lub uaktualnienie wpisów) 5) Sprawdzenie, czy wcześniej przydzielone przez administratora wartości parametrów dla obiektów są dopuszczalne (spełniają warunki z definicji parametru). Jeśli nie, to wygenerowanie odpowiedniego raportu, 6) Usunięcie definicji starych (nie przetworzonych podczas bieżącego ładowania) obiektów uprawnień z bazy danych Jak widać system uwzględnia konieczność aktualizacji uprawnień przy przechodzeniu do nowej wersji aplikacji. Wbudowane mechanizmy ułatwiają pracę administratora systemu. 4.3 Procedury wbudowane w bazę danych Część aplikacji działająca po stronie bazy danych wykorzystuje kilka szczególnych cech bazy danych PostgreSQL. Pierwszą silnie wykorzystywaną cechą jest możliwości zdefiniowania dla jednego użytkownika kilku schematów, które na dodatek są dość luźno z nim powiązane (np. użytkownik nie musi być właścicielem schematu, właścicielem schematu domyślnego użytkownika może być inny użytkownik). Pozwala to na bardzo łatwe zdefiniowanie kilku profili uprawnień dla jednego konta. Użytkownik loguje się do bazy i wybiera profil, w którym chce pracować (np. wywołując funkcję wbudowaną). System ustawia jako schemat domyślny schemat odpowiadający danemu profilowi. Jest to szerzej opisane w [1]. Drugą cechą jest możliwość definicji funkcji w kilku językach (m.in. PL/pgsql, PL/java, SQL). Szczególnie istotna jest możliwość definiowania funkcji w języku SQL, których kod może być wstawiony do zawierającego je zapytania. Jest wykorzystane w przypadku definiowania uprawnień do zwracanych przez funkcję wierszy (gdy funkcja zwraca zbiór). 417

8 J. Pychowski Trzecią cechą jest możliwość modyfikacji budowy zapytania przed jego wykonaniem z wykorzystaniem tzw. reguł przepisywania zapytań. Procedury wbudowane w dużym stopniu korzystają z trzech powyższych mechanizmów oraz realizują następującą funkcjonalność: ustawienie schematu zależnego od wybranego profilu, zbudowanie oraz usunięcie schematu odpowiadającego danemu profilowi, tworzenie odpowiednich obiektów uprawnień dla konkretnego profilu użytkownika, utworzenie oraz usunięcie użytkownika. 5 Wnioski końcowe Opisany system obsługi uprawnień zapewnia praktycznie nieograniczoną swobodę definicji uprawnień do istniejących obiektów. Zastosowane w obecnej wersji rozwiązania pozwalają znacząco obniżyć narzut czasowy opisany w [1] poprzez zdefiniowanie dodatkowych obiektów w bazie, do których może się odwoływać aplikacja. W przeciwieństwie do systemu obsługi uprawnień opisanego w [1] rozpatrywany system jest znacznie bardziej elastyczny, pozwala na definicję większego zakresu obiektów bazodanowych (system opisany w [1] pozwalał tylko na zdefiniowanie widoku na jednej tabeli) oraz wprowadza znacznie silniejsze rozgraniczenie pomiędzy rolami administratora bazy danych/architekta systemu, a administratora aplikacji. Administrator bazy danych lub architekt systemu definiuje szablony uprawnień, które są niezmienne, a administrator aplikacji może tylko ustalać wartości parametrów. Pozwala to zabezpieczyć się przed błędami w aplikacji, które generowałyby potencjalnie niebezpieczne definicje widoków. System ten można wprowadzić do użytku zarówno w nowych projektach, jak i już działających. Wdrożenie tego rozwiązania w wymaga tylko dostosowania interfejsu przydzielania uprawnień z poziomu aplikacji. Pozostałe części systemu pozostaną bez zmian. Opisany system można stosunkowo łatwo dostosować do użycia w innych systemach zarządzania bazą danych niż PostgreSQL. Konieczne zmiany objęłyby tylko procedury wbudowane. Część systemu znajdująca się poza bazą pozostałaby niezmieniona. Stopień złożoności przeniesienie zdefiniowanych uprawnień pomiędzy różnymi systemami zarządzania bazą danych jest trudny do oszacowania ze względu na różny stopień zgodności ze standardem zaimplementowanych w DBMS-ach języków zapytań. Podobnym do omawianego rozwiązania rozwiązaniem jest Oracle Virtual Private Database, który także realizuje obsługę uprawnień za pomocą predykatów. Jako zasadnicze różnice można wymienić następujące zagadnienia: omawiany system jest rozwiązaniem hybrydowym, pozwala na definicję uprawnień zarówno za pomocą predykatów, jak i etykiet (list kontroli dostępu), omawiany system nie jest ściśle zintegrowany z konkretnym systemem zarządzania bazą danych (większość funkcjonalności da się stosunkowo łatwo przenieść na dowolną inną bazę danych wspierającą procedury wbudowane i wyzwalacze na widokach), omawiany system pozwala na definiowanie uprawnień nie tylko na tabelach ale też na widokach i funkcjach. 418

9 Literatura Elastyczny system uprawnień w bazie danych PostgreSQL 1. Miodek K., Pychowski J.: Elastyczny system uprawnień użytkowników w systemie zarządzania bazą danych PostgreSQL, Bazy danych modele, technologie, narzędzia, tom I, strony WkiŁ, Warszawa Dokumentacja bazy danych PostgreSQL 3. Dokumentacja systemu Veil 4. Strona bazy danych Firebird 5. Strona bazy danych IBM DB Strona bazy danych Microsoft SQL Server 7. Strona firmy Oracle 8. Strona firmy Sybase 9. Rask A., Rubin D., Neumann B.: Implementing Row- and Cell-Level Security in Classified Databases Using SQL Server 2005, multisec.mspx. 419

10

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop. 2016 Spis treści O autorach 11 Podziękowania 12 Część I Wprowadzenie do języka SQL 13 Godzina 1. Witamy w świecie języka SQL 15

Bardziej szczegółowo

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15 T-SQL dla każdego / Alison Balter. Gliwice, cop. 2016 Spis treści O autorce 11 Dedykacja 12 Podziękowania 12 Wstęp 15 Godzina 1. Bazy danych podstawowe informacje 17 Czym jest baza danych? 17 Czym jest

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

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c Wymagania edukacyjne w technikum ADMINISTROWANIE BAZAMI DANYCH kl. 4c Lp. 1 2 4 5 Temat Zasady dotyczące zarządzania projektem podczas prac związanych z tworzeniem bazy oraz cykl życiowy bazy Modele tworzenia

Bardziej szczegółowo

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych Laboratorium Technologii Informacyjnych Projektowanie Baz Danych Komputerowe bazy danych są obecne podstawowym narzędziem służącym przechowywaniu, przetwarzaniu i analizie danych. Gromadzone są dane w

Bardziej szczegółowo

PHP: bazy danych, SQL, AJAX i JSON

PHP: bazy danych, SQL, AJAX i JSON 1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji

Bardziej szczegółowo

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik

Blaski 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ółowo

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką Autor: Paweł Konieczny Promotor: dr Jadwigi Bakonyi Kategorie: aplikacja www Słowa kluczowe: Serwis

Bardziej szczegółowo

Programowanie MorphX Ax

Programowanie MorphX Ax Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn

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

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK Paweł Lenkiewicz Polsko Japońska Wyższa Szkoła Technik Komputerowych Plan prezentacji PJWSTK

Bardziej szczegółowo

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d. TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Usługi analityczne budowa kostki analitycznej Część pierwsza. Usługi analityczne budowa kostki analitycznej Część pierwsza. Wprowadzenie W wielu dziedzinach działalności człowieka analiza zebranych danych jest jednym z najważniejszych mechanizmów podejmowania decyzji.

Bardziej szczegółowo

QUERY język zapytań do tworzenia raportów w AS/400

QUERY język zapytań do tworzenia raportów w AS/400 QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora

Bardziej szczegółowo

Spis treści. Przedmowa

Spis treści. Przedmowa Spis treści Przedmowa V 1 SQL - podstawowe konstrukcje 1 Streszczenie 1 1.1 Bazy danych 1 1.2 Relacyjny model danych 2 1.3 Historia języka SQL 5 1.4 Definiowanie danych 7 1.5 Wprowadzanie zmian w tabelach

Bardziej szczegółowo

Symfonia Produkcja. Kreator raportów. Wersja 2013

Symfonia Produkcja. Kreator raportów. Wersja 2013 Symfonia Produkcja Kreator raportów Wersja 2013 Windows jest znakiem towarowym firmy Microsoft Corporation. Adobe, Acrobat, Acrobat Reader, Acrobat Distiller są zastrzeżonymi znakami towarowymi firmy Adobe

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Bazy danych Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2016 Plan wykładu Wstęp do baz danych Modele baz danych Relacyjne bazy danych Język SQL Rodzaje

Bardziej szczegółowo

Warstwa bazy danych w aplikacjach trójwarstwowych opartych na technologiach PHP i XML

Warstwa bazy danych w aplikacjach trójwarstwowych opartych na technologiach PHP i XML Rozdział 43 Warstwa bazy danych w aplikacjach trójwarstwowych opartych na technologiach PHP i XML Streszczenie. W rozdziale tym zostały opisane wybrane mechanizmy utworzone podczas realizacji dużego przedsięwzięcia

Bardziej szczegółowo

Tworzenie bazy danych na przykładzie Access

Tworzenie bazy danych na przykładzie Access Tworzenie bazy danych na przykładzie Access Tworzenie tabeli Kwerendy (zapytania) Selekcja Projekcja Złączenie Relacja 1 Relacja 2 Tworzenie kwedend w widoku projektu Wybór tabeli (tabel) źródłowych Wybieramy

Bardziej szczegółowo

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza

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

Widoki zagnieżdżone, layout. 1. Wprowadzenie Repozytoria danych

Widoki zagnieżdżone, layout. 1. Wprowadzenie Repozytoria danych Widoki zagnieżdżone, layout 1. Wprowadzenie Repozytoria danych Identyczne operacje na danych często się powtarzają np. pobierz książkę. Jeśli zapytanie realizowane jest za każdym razem w metodzie kontrolera

Bardziej szczegółowo

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Bazy danych Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Wszechnica Poranna Trzy tematy: 1. Bazy danych - jak je ugryźć? 2. Język SQL podstawy zapytań. 3. Mechanizmy wewnętrzne baz danych czyli co

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

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, 2016 Spis treści Wprowadzenie Podziękowania xiii xvii 1 Podstawy zapytań i programowania T-SQL 1 Podstawy

Bardziej szczegółowo

2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH PLAN WYKŁADU Bezpieczeństwo w języku SQL Użytkownicy Uprawnienia Role BAZY DANYCH Wykład 8 dr inż. Agnieszka Bołtuć OGRANICZENIA DOSTĘPU DO DANYCH Ograniczenie danych z tabeli dla określonego użytkownika

Bardziej szczegółowo

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod

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

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, 2017 Spis treści O autorze 9 Wprowadzenie 11 Lekcja 1. Zrozumieć SQL 15 Podstawy baz danych 15 Język SQL

Bardziej szczegółowo

Porównanie systemów zarządzania relacyjnymi bazami danych

Porównanie systemów zarządzania relacyjnymi bazami danych Jarosław Gołębiowski 12615 08-07-2013 Porównanie systemów zarządzania relacyjnymi bazami danych Podstawowa terminologia związana z tematem systemów zarządzania bazami danych Baza danych jest to zbiór danych

Bardziej szczegółowo

Pojęcie systemu baz danych

Pojęcie systemu baz danych Pojęcie systemu baz danych System baz danych- skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki. Składa się z zasadniczych elementów: 1) Danych 2) Sprzętu 3) Programów 4)

Bardziej szczegółowo

CREATE USER

CREATE USER Temat: Administrowanie użytkownikami bazy danych. Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest możliwość

Bardziej szczegółowo

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny

Bardziej szczegółowo

Migracja do PostgreSQL za pomocą narzędzi Enterprise DB

Migracja do PostgreSQL za pomocą narzędzi Enterprise DB Migracja do PostgreSQL za pomocą narzędzi Enterprise DB Przemysław Deć Konsultant IT Linux Polska Sp. z o.o. Cele prezentacji Czym jest Enterprise DB Korzyści migracji do opensource`owej bazy danych Kompatybilność

Bardziej szczegółowo

Szkolenie autoryzowane. MS Tworzenie zapytań do Microsoft SQL Server Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje

Szkolenie autoryzowane. MS Tworzenie zapytań do Microsoft SQL Server Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje Szkolenie autoryzowane MS 10774 Tworzenie zapytań do Microsoft SQL Server 2012 Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje Opis szkolenia Uwaga! Szkolenie wycofane z oferty. Zapraszamy

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

Plan. Raport. Tworzenie raportu z kreatora (1/3)

Plan. Raport. Tworzenie raportu z kreatora (1/3) 3 Budowa prostych raportów opartych o bazę danych Plan Co to jest raport? Tworzenie za pomocą kreatora Tworzenie opartego o polecenie SQL Edycja atrybutów Atrybuty regionu Atrybuty Atrybuty kolumn 2 Raport

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

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

PRZESTRZENNE 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ółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Zapytania SELECT Dr inż. Paweł Kasprowski pawel@kasprowski.pl Przykład HAVING Podaj liczebność zespołów dla których najstarszy pracownik urodził się po 1940 select idz, count(*) from prac p

Bardziej szczegółowo

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści Ramowy plan kursu Lp. Moduły Wyk. Lab. Przekazywane treści 1 3 4 Technologia MS SQL Server 2008 R2. Podstawy relacyjnego modelu i projektowanie baz. Zaawansowane elementy języka SQL. Programowanie w języku

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

EXSO-CORE - specyfikacja

EXSO-CORE - specyfikacja EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.

Bardziej szczegółowo

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bardziej szczegółowo

SYSTEM INFORMATYCZNY KS-SEW

SYSTEM INFORMATYCZNY KS-SEW DOKUMENTACJA TECHNICZNA KAMSOFT S.A. 40-235 Katowice ul. 1-Maja 133 Tel. (032) 2090705, Fax. (032) 2090715 http://www.kamsoft.pl, e-mail: 5420@kamsoft.pl SYSTEM INFORMATYCZNY NR KATALOGOWY 2334PI06.00

Bardziej szczegółowo

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38 Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych

Bardziej szczegółowo

Plan. Aplikacja. Architektura aplikacji. Architektura aplikacji Tworzenie aplikacji Application Builder podstawy

Plan. Aplikacja. Architektura aplikacji. Architektura aplikacji Tworzenie aplikacji Application Builder podstawy Plan Podstawy narzędzia Application Builder, 2 budowa strony, kreatory Architektura Tworzenie Tworzenie formularza tabelarycznego Budowa strony 2 Architektura Aplikacja kolekcja stron połączonych ze sobą

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

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle 2010-10-21

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle 2010-10-21 Organizacja zajęć BAZY DANYCH II WYKŁAD 1 Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu.pl Liczba godzin i forma zajęć: 15 godzin wykładu oraz 30 godzin laboratorium Konsultacje:

Bardziej szczegółowo

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie

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

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Krzysztof Kadowski. PL-E3579, PL-EA0312, Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza

Bardziej szczegółowo

2011-11-04. Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL

2011-11-04. Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL Instalacja, konfiguracja Dr inŝ. Dziwiński Piotr Katedra InŜynierii Komputerowej Kontakt: piotr.dziwinski@kik.pcz.pl 2 Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management

Bardziej szczegółowo

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych Spis treści Wprowadzenie... ix Organizacja ksiąŝki... ix Od czego zacząć?... x Konwencje przyjęte w ksiąŝce... x Wymagania systemowe... xi Przykłady kodu... xii Konfiguracja SQL Server 2005 Express Edition...

Bardziej szczegółowo

Wprowadzenie do Doctrine ORM

Wprowadzenie do Doctrine ORM Wprowadzenie do Doctrine ORM Przygotowanie środowiska Do wykonania ćwiczenia konieczne będzie zainstalowanie narzędzia Composer i odpowiednie skonfigurowanie Netbeans (Tools->Options->Framework & Tools->Composer,

Bardziej szczegółowo

Wykład 8. SQL praca z tabelami 5

Wykł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ółowo

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. Informatyka I Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 Standard JDBC Java DataBase Connectivity

Bardziej szczegółowo

JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008

JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008 JDBC w LoXiMie Interfejs Java Database Connectivity dla systemu LoXiM Adam Michalik 2008 Sterownik JDBC co to jest? Sterownik JDBC to zbiór klas implementujących interfejsy opisane w specyfikacji JDBC

Bardziej szczegółowo

Cel szkolenia. Konspekt

Cel szkolenia. Konspekt Cel szkolenia Autoryzowany ośrodek Microsoft serdecznie zaprasza na szkolenie z zakresu bazy danych Microsoft SQL Server 2014. Kurs ten dostarczy uczestnikowi wiedzy na zarządzania bazą danych w środowisku

Bardziej szczegółowo

Wstęp. Opis ten dotyczy wydziałów orzeczniczych.

Wstęp. Opis ten dotyczy wydziałów orzeczniczych. Wstęp. Opis ten dotyczy wydziałów orzeczniczych. W związku z przekształceniem 79 Sądów w Wydziały Zamiejscowe i związane z tym liczne zapytania odnośnie strony technicznej i sposobu przygotowania baz danych

Bardziej szczegółowo

Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2

Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2 Szkolenie autoryzowane MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2 Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje Opis szkolenia Szkolenie, gdzie uczestnicy zapoznają

Bardziej szczegółowo

Kostki OLAP i język MDX

Kostki OLAP i język MDX Kostki OLAP i język MDX 24 kwietnia 2015 r. Opis pliku z zadaniami Wszystkie zadania na zajęciach będą przekazywane w postaci plików PDF sformatowanych jak ten. Będą się na nie składały różne rodzaje zadań,

Bardziej szczegółowo

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia BAZY DANYCH LABORATORIUM Studia niestacjonarne I stopnia Gdańsk, 2011 1. Cel zajęć Celem zajęć laboratoryjnych jest wyrobienie praktycznej umiejętności tworzenia modelu logicznego danych a nastepnie implementacji

Bardziej szczegółowo

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL 1 Podstawy relacyjnego modelu danych. 3h UWAGA: Temat zajęć jest typowo teoretyczny i stanowi wprowadzenie do zagadnień

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha

Bardziej szczegółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

Wyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz

Wyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz 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ółowo

5.3. Tabele. Tworzenie tabeli. Tworzenie tabeli z widoku projektu. Rozdział III Tworzenie i modyfikacja tabel

5.3. Tabele. Tworzenie tabeli. Tworzenie tabeli z widoku projektu. Rozdział III Tworzenie i modyfikacja tabel 5.3. Tabele Tabela jest podstawowym elementem bazy danych. To właśnie w tabelach gromadzone są w bazie rekordy danych. Projektując tabelę, definiujemy, jakie pola będzie zawierał pojedynczy rekord informacji.

Bardziej szczegółowo

Referat pracy dyplomowej

Referat pracy dyplomowej Referat pracy dyplomowej Temat pracy: Wdrożenie intranetowej platformy zapewniającej organizację danych w dużej firmie na bazie oprogramowania Microsoft SharePoint Autor: Bartosz Lipiec Promotor: dr inż.

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

Instytut Mechaniki i Inżynierii Obliczeniowej  Wydział Mechaniczny technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 3 (Tworzenie bazy danych z użyciem UML, proste

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/

Instytut Mechaniki i Inżynierii Obliczeniowej   fb.com/groups/bazydanychmt/ Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl fb.com/groups/bazydanychmt/ Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 3 (Tworzenie

Bardziej szczegółowo

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, Bazy Danych Bazy Danych i SQL Podstawowe informacje o bazach danych Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Oczekiwania? 2 3 Bazy danych Jak przechowywać informacje? Jak opisać rzeczywistość?

Bardziej szczegółowo

Systemy baz danych. mgr inż. Sylwia Glińska

Systemy baz danych. mgr inż. Sylwia Glińska Systemy baz danych Wykład 1 mgr inż. Sylwia Glińska Baza danych Baza danych to uporządkowany zbiór danych z określonej dziedziny tematycznej, zorganizowany w sposób ułatwiający do nich dostęp. System zarządzania

Bardziej szczegółowo

Import danych z plików Excel. (pracownicy, limity urlopowe i inne)

Import danych z plików Excel. (pracownicy, limity urlopowe i inne) Import danych z plików Excel (pracownicy, limity urlopowe i inne) 1. Wstęp BeeOffice umożliwia import z plików Excel kilku rodzajów danych, najczęściej wykorzystywanych podczas tworzenia nowego systemu

Bardziej szczegółowo

GS2TelCOMM. Rozszerzenie do TelCOMM 2.0. Opracował: Michał Siatkowski Zatwierdził: IMIĘ I NAZWISKO

GS2TelCOMM. Rozszerzenie do TelCOMM 2.0. Opracował: Michał Siatkowski Zatwierdził: IMIĘ I NAZWISKO GS2TelCOMM Rozszerzenie do TelCOMM 2.0 Opracował: Michał Siatkowski 29-03-2017 Zatwierdził: IMIĘ I NAZWISKO DATA TEL-STER 2017 Spis treści Wprowadzenie... 3 Architektura... 3 Instalacja... 3 Współpraca

Bardziej szczegółowo

Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski

Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski Struktura systemu operacyjnego Schemat budowy systemu operacyjnego model warstwowy Schemat budowy systemu operacyjnego części składowe Większość systemów operacyjnych opiera się o koncepcję jądra, która

Bardziej szczegółowo

Uruchamianie bazy PostgreSQL

Uruchamianie bazy PostgreSQL Uruchamianie bazy PostgreSQL PostgreSQL i PostGIS Ten przewodnik może zostać pobrany jako PostgreSQL_pl.odt lub PostgreSQL_pl.pdf Przejrzano 10.09.2016 W tym rozdziale zobaczymy, jak uruchomić PostgreSQL

Bardziej szczegółowo

Baza danych sql. 1. Wprowadzenie

Baza danych sql. 1. Wprowadzenie Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z edytora graficznego struktury bazy danych, który

Bardziej szczegółowo

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie. Wydział Geologii, Geofizyki i Ochrony Środowiska. Bazy danych 2

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie. Wydział Geologii, Geofizyki i Ochrony Środowiska. Bazy danych 2 AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie Wydział Geologii, Geofizyki i Ochrony Środowiska Wydajnośd w bazach danych Grzegorz Surdyka Informatyka Stosowana Kraków, 9 Spis treści. Wstęp...

Bardziej szczegółowo

ARCHICAD 21 podstawy wykorzystania standardu IFC

ARCHICAD 21 podstawy wykorzystania standardu IFC ARCHICAD 21 podstawy wykorzystania standardu IFC IFC (Industry Foundation Classes) to otwarty format wymiany danych. Powstał z myślą o ułatwieniu międzydyscyplinarnej współpracy z wykorzystaniem cyfrowych

Bardziej szczegółowo

Encje w Drupalu. Tworzenie własnych encji i ich wpływ na poprawę wydajności

Encje w Drupalu. Tworzenie własnych encji i ich wpływ na poprawę wydajności Encje w Drupalu Tworzenie własnych encji i ich wpływ na poprawę wydajności DrupalCamp Wrocław 2015 Grzegorz Bartman https://twitter.com/grzegorzbartman O mnie Grzegorz Bartman http://twitter.com/grzegorzbartman

Bardziej szczegółowo

Tworzenie aplikacji bazodanowych

Tworzenie aplikacji bazodanowych Wydział Informatyki Politechnika Białostocka Studia stacjonarne Tworzenie aplikacji bazodanowych Prowadzący: pokój: E-mail: WWW: Małgorzata Krętowska, Agnieszka Oniśko 206 (Małgorzata Krętowska), 207 (Agnieszka

Bardziej szczegółowo

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych

Bardziej szczegółowo

Microsoft Access materiały pomocnicze do ćwiczeń cz. 1

Microsoft Access materiały pomocnicze do ćwiczeń cz. 1 Microsoft Access materiały pomocnicze do ćwiczeń cz. 1 I. Tworzenie bazy danych za pomocą kreatora Celem ćwiczenia jest utworzenie przykładowej bazy danych firmy TEST, zawierającej informacje o pracownikach

Bardziej szczegółowo

Integralność danych Wersje języka SQL Klauzula SELECT i JOIN

Integralność danych Wersje języka SQL Klauzula SELECT i JOIN Integralność danych Wersje języka SQL Klauzula SELECT i JOIN Robert A. Kłopotek r.klopotek@uksw.edu.pl Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Integralność danych Aspekty integralności

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 11 PHP, MySQL: więcej, więcej!, więcej!!. tabel i funkcjonalności. Na dzisiejszych zajęciach zdefiniujemy w naszej bazie kilka tabel powiązanych kluczem obcym i zobaczymy,

Bardziej szczegółowo

Monitoring procesów z wykorzystaniem systemu ADONIS. Krok po kroku

Monitoring procesów z wykorzystaniem systemu ADONIS. Krok po kroku z wykorzystaniem systemu ADONIS Krok po kroku BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Optymalizacja zapytań Pobieranie planu wykonania Indeksy i wydajność - 1 - Zadania optymalizatora

Bardziej szczegółowo

Relacyjne bazy danych a XML

Relacyjne bazy danych a XML Relacyjne bazy danych a XML Anna Pankowska aniap@amu.edu.pl Internet, SQLiXMLwbiznesie Internet nieoceniony sposób komunikacji z klientami, pracownikami i partnerami handlowymi przyspiesza transakcje finansowe

Bardziej szczegółowo

DHL24. Główny Użytkownik. i Przesyłka Serwisowa. Dokumentacja użytkownika końcowego

DHL24. Główny Użytkownik. i Przesyłka Serwisowa. Dokumentacja użytkownika końcowego DHL24 Główny Użytkownik i Przesyłka Serwisowa Dokumentacja użytkownika końcowego Opis: Niniejszy dokument opisuje funkcjonalność Głównego Użytkownika i Przesyłki Serwisowej w aplikacji DHL24 w ujęciu użytkownika

Bardziej szczegółowo

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor Koszalin, 15.06.2012 r. Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor Zespół projektowy: Daniel Czyczyn-Egird Wojciech Gołuchowski Michał Durkowski Kamil Gawroński Prowadzący: Dr inż.

Bardziej szczegółowo

Dokumentacja panelu Klienta

Dokumentacja panelu Klienta Dokumentacja panelu Klienta Wersja 1.1 Strona 1 z 17 Spis treści Historia zmian... 3 Logowanie do Panelu Klienta... 4 Panel... 5 Wysyłki... 6 Przyłączenia... 7 Ustawienia... 8 Zasoby... 8 Integracje...

Bardziej szczegółowo

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych BAZY DANYCH Co to jest baza danych Przykłady baz danych Z czego składa się baza danych Rodzaje baz danych CO TO JEST BAZA DANYCH Komputerowe bazy danych już od wielu lat ułatwiają człowiekowi pracę. Są

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

Instytut Mechaniki i Inżynierii Obliczeniowej   Wydział Mechaniczny technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 3 (Tworzenie bazy danych z użyciem UML, proste

Bardziej szczegółowo