BAZY DAYCH W PRZETWARZAIU DAYCH
Baza danych do zestaw programów do przetwarzania danych przeznaczonych do
profesjonalnej obsługi danych. Bazy danych występują zarówno w zastosowaniach
indywidualnych
(prywatnych),
jak
i
w
zastosowaniach
profesjonalnych
(w
przedsiębiorstwach). Przykładem prywatnej bazy danych jest Access (Microsoft), można
znaleźć podobne bazy w środowisku Linux.
Baza danych w firmie jest zestawem programów wkomponowanych w całość
informatycznych
zastosowań
ukierunkowanych
na
wspomaganie
zarządzania
przedsiębiorstwem. Baza działa w architekturze klient-serwer, tzn. przetwarzanie danych
odbywa się na takiej zasadzie, że wielu klientów (użytkowników) wspólnie użytkuje dane
zgromadzone w jednym miejscu, na serwerze bazy danych. Dane do przetwarzania są w
odpowiedni sposób sformatowane, dane są zapisywane do bazy danych tylko raz
(nieredundantne). Dane są przetwarzane na serwerze bazy danych, a klienci tego serwera
korzystają z tych danych w ramach własnej specyficznej funkcjonalności, np. księgowość,
gospodarka materiałowa, zarządzanie personelem.
Rodzaje baz danych:
• Proste
• Kartotekowe
• Relacyjne
• Obiektowe
• Strumieniowe
• Temporalne
Bazy danych do domowego (indywidualnego) użytku
Bazy danych w przedsiębiorstwach (instytucjach)
azwisko, imię
Adres
Wiek
Płeć
.........
Access
Excel
Linux
Zestaw programów do profesjonalnej obsługi danych
IFORMATYKA A PRZETWARZAIE DAYCH
Informacja
dana
IFORMACJA – pewna treść związana z przekazem, pleceniem,
nakazem, zakazem. Teoria informacji
DAE – uporządkowane zapisy informacyjne. Dane mają zawsze
pewien format. Odnoszą się do sfery gospodarczej, społecznej
PRZETWARZAIE DAYCH – ogromne ilości danych, proste algorytmy i przebiegi
przetwarzania. Różne źródła danych, różne miejsca przeznaczenia danych (klienci).
Informacja jest tworzywem dla informatyki, informatyka w najbardziej ogólnym sensie to
informacja plus automatyka, gdzie automatem jest komputer (sprzęt plus oprogramowanie).
Dane stanowią specjalny rodzaj informacji (odmianę informacji) ukierunkowanej na
opisywanie zdarzeń gospodarczych.
Przetwarzanie danych stanowi specjalny rodzaj zastosowania informatyki, jest ono
ukierunkowane na zagadnienia ekonomiczne i społeczne.
Przetwarzanie danych występuje w informatyce wspomagającej zarządzanie. Dane będące
przedmiotem przetwarzania muszą być wcześniej w specjalny sposób sformatowane
(przygotowane do przetwarzanie w komputerze).
Przetwarzanie danych odbywa się w formie systemów przetwarzania danych, w sensie
użytkowym tworzy się specjalne systemy przetwarzania danych zwane często aplikacjami
użytkowymi.
Przetwarzanie informacji jest ukierunkowane na pozyskiwanie informacji o danych i o
zmianach jakie zachodzą w obrębie danych, np. dane opisują stan rodziny, a informacja to
urodzenie dziecka
TECHOLOGIA PRZETWARZAIA DAYCH
W systemach przetwarzania danych wyróżniamy różne
typy operacji
przetwarzania danych
:
dostępu do danych,
przemieszczania danych w przestrzeni (zmiana miejsca),
przemieszczania danych w czasie (zapamiętywanie danych),
operacje algorytmiczne (łączenie, rozdzielanie, grupowanie,
porządkowanie danych),
operacje logiczne wynikające z logiki procedury ewidencyjno–
administracyjnej lub informacyjno–decyzyjnej danego systemu
informacyjnego.
Przebiegi przetwarzania danych:
Zapamiętywanie danych w zbiorach danych,
Wyszukiwanie danych
Przekształcanie danych (grupowanie, rozdzielanie)
Aktualizacji danych w zbiorach danych
Stosuje się specjalne reguły typologii przetwarzania danych. Wyróżnia się pewne typowe
operacje przetwarzania danych. Operacje te stosujemy następnie w konkretnych użytkowych
systemach przetwarzania danych.
W systemach przetwarzania danych posługujemy się także typowymi operacjami na zbiorach
danych zwanymi przebiegami przetwarzania. Są to na ogół operacje powtarzalne, typowe,
mające charakter uniwersalny, tzn. znajdują zastosowanie w dowolnym systemie
informatycznym. Przebieg przetwarzania danych zatem to zespół operacji na zbiorach danych
przekształcaniu danych pobieranych z jednego zbioru danych i zapisywaniu ich do innego
zbioru. Najczęściej przebieg przetwarzania jest obsługiwany jednym programem. Z
podstawowych przebiegów przetwarzania można konstruować procesy technologiczne dla
dowolnych systemów informatycznych wspomagających zarządzanie.
1
1
Zob. Z.Biniek, Informatyka w zarządzaniu, Vizja&Pres, Warszawa 2009
FORMATOWAIE DAYCH
W systemie przetwarzania danych posługujemy się danymi, które zostały wcześniej
sformatowane. Formatowanie danych to definiowanie danych według pewnych ogólnych
reguł. Został określony podział na jednostki danych:
Znak
– najmniejsza jednostka danych do przetwarzania, np. litera alfabetu, cyfra, jakiś znak
specjalny (&)
Element danych
(pole danych) – składa się ze znaków, pewna logicznie powiązana kolekcja
danych, np. nazwisko, imię, stan konta. Bywają pola danych zwykłe i kluczowe.
Klucz
– dane kluczowe, zakodowane na potrzeby przetwarzania danych, umożliwiają dostęp
do zasobów danych z poziomu programu przetwarzania danych, np. indeks materiałowy, kod
kontrahenta
Segment danych
– grupa pól danych powiązanych pewną wspólną cechą, np. adres, dane
kontrahenta
Rekord
– grupa pól danych logicznie ze sobą powiązanych posiadających wspólny klucz
identyfikacyjny, np. konto,
Zbiór danych
(plik) – grupa rekordów danych odpowiednio uporządkowanych, w zbiorach
gromadzone są dane do przetwarzania, a przetwarzane są rekordy danych
Blok danych
– czasami występuje w przetwarzaniu danych, dane są przetwarzane blokami,
np. wczytywane do pamięci.
Formatowanie danych ma ułatwić posługiwanie się danymi w procesie przetwarzania danych,
tj. przekształcania danych w różnych układach, zapamiętywania danych, przenoszenia danych
.
Element danych
Nazwisko
imię
ulica
Kod
Miejsco
wość
Nr konta
Stan
konta
Ostatnia
wpłata
Segment danych Adres
Rekord danych Konto, dane sformatowane, pola kluczowe i zwykłe
znak
Zbiór danych, zb. klientów, zb.pracowników, zb. artykułów
Blok danych
klucz
ORGAIZACJA PRZETWARZAIA DAYCH
Zadania:
1.Analiza struktur danych
2.Modelowanie danych tj. opis struktur w formie modeli danych
3.Określenie kluczy do identyfikacji danych
4.Określenie optymalnych form zapamiętywania danych
5.Określenie przebiegów manipulacji danymi i przebiegów
przekształcania danych
Rodzaje danych:
1.Dane słownikowe, podstawowe
2.Dane o stanach
3.Dane ruchu
4.Dane o zmianach
Organizacja przetwarzania danych zajmuje się przygotowaniem
danych do przetwarzania. Podstawowe zadanie specjalistów w ramach organizacji
przetwarzania danych to analiza struktur danych do przetwarzania. Określane jest
zapotrzebowanie na dane oraz definiowane są formaty danych. Modelowanie danych odbywa
się zgodnie z regułami odpowiednich notacji. W ramach notacji oferowane są konkretne
diagramy do opisu modeli danych. Istnieje standard SQL do modelowania danych w bazach
danych. Ważnym zagadnieniem przy formatowaniu danych jest poprawne zdefiniowanie
kluczy danych (tzw. danych kluczowych) pomocnych przy wyszukiwaniu danych (dostęp do
danych) zawartych w masowych zbiorach danych. Dane zapamiętywane są w rekordach, a
rekordy gromadzone są w zbiorach danych. Podział na zbiory i rekordy stanowi jedno z
ważniejszych zagadnień organizacji przetwarzania danych. Przetwarzanie danych w sensie
logicznym odbywa się w postaci przebiegów przetwarzania. Istnieją przebiegi przekształcania
danych pod kątem potrzeb informacyjnych użytkowników.
Dane podstawowe: dane te służą do opisania takich cech podstawowych obiektu zarządzania,
które albo w ogóle nie ulegają zmianie, albo zmieniają się bardzo rzadko np. Nazwisko,
Adres, Branża, Nr Personalny, Data Urodzenia
Dane o stanach: opisują zasoby stanów np. stany magazynowe, stany kont. Dane te są
uaktualniane na bieżąco. W przetwarzaniu dialogowym (interaktywnym) w sposób ciągły, a w
przetwarzaniu batchowym (bez bezpośredniego udziału użytkownika) poprzez dopisywanie.
Dane o ruchu: zawierają zmiany stanów. Zasadniczo w formie ilościowych i wartościowych
przychodów i rozchodów, np. wpłaty, wypłaty, doksięgowania, dostawy towarów.
Dane o zmianach: opisują zmiany zachodzące w danych podstawowych, kasowanie
nieaktualnych i wprowadzanie nowych danych podstawowych.
Istnieją dwa systemy organizacji przetwarzania danych: system plików i system baz danych.
SYSTEM PLIKÓW
System plików to tradycyjny system przetwarzania danych, stosowany powszechnie w
przeszłości. Obecnie występuję sporadycznie.
P1, P2, P3 – programy komputerowe do przetwarzania danych
ZB1, ZB2, ZB3 – zbiory danych do przetwarzania
Zarządzanie, Organizacja, Produkcja – problematyka przetwarzania danych (aplikacja,
przebieg przetwarzania).
Obowiązuje tutaj zasada ścisłego powiązania pomiędzy programami i zbiorami. W logice
działania programu są umieszczone obsługi zbiorów danych. Każdy program korzysta z
własnego zbioru danych. Brak jest współdziałania pomiędzy poszczególnymi programami w
zakresie korzystania ze wspólnych danych. Te same dane są zapisywane wielokrotnie w
różnych zbiorach danych. Mamy zatem do czynienia z tzw. redundancją danych
(przepełnieniem). Tradycyjne systemy przetwarzania danych cechuje brak integracji poprzez
dane, czyli brak wspólnych danych. Każdy program ma własny moduł do obsługi
manipulowania danymi.
P1
P2
P3
PROGRAMY
ZBIORY
SYSTEM PROGRAMY - ZBIORY
ŚCISŁE POWIĄZAIE MIĘDZY PROGRAMAMI I ZBIORAMI
ZB1
ZB2
ZB3
ZARZĄDZANIE
ORGANIZACJA
PRODUKCJA
TECHOLOGIA BAZ DAYCH
View – poszczególne programy z konkretną funkcjonalnością (przebiegi przetwarzania)
SZBD – system zarządzania bazą danych (Serwer)
Baza Danych – zbiory wspólnych danych do przetwarzania.
W technologii baz danych zakłada się podział funkcji przetwarzania na funkcje obsługi
danych i funkcje obsługi konkretnych zadań użytkownika (np. księgowość, kasa,
fakturowanie). Występują wspólne dane do przetwarzania w różnych konkretnych
zastosowaniach. Dane zgromadzone są wspólnie w jednej odpowiednio zaprojektowanej
bazie danych. Do zarządzania danymi stosowany jest specjalny program zwany serwerem
bazy danych (SZBD). Podczas przetwarzania konkretnych programów (View) dane pobierane
są z bazy danych i umieszczane na komputerze użytkownika, tylko na czas przetwarzania. Po
zakończeniu konkretnego przebiegu przetwarzania dane umieszczane są ponownie w bazie
danych, już w nieco przekształconej formie.
Zarówno Sewer, jak i klienci są obsługiwani przez konkretne systemy operacyjne, bowiem
przetwarzania danych może odbywać się na wielu komputerach jednocześnie.
SYSTEM BAKU DAYCH
VIEW1
VIEW2
VIEW3
SZBD
BAZA
DANYCH
BRAK BEZPOŚREDIEGO POWIĄZAIA POMIĘDZY PROGRAMAMI I ZBIORAMI
ZARZĄDZANIE
ORGANIZACJA
PRODUKCJA
ARCHITEKTURA FUKCJOALA BAZ DAYCH
Funkcjonalnie baza danych ma zapewnić jednoczesny dostęp wielu użytkowników do
wspólnych danych. Konkretny użytkownik posługuje się konkretną aplikacją użytkową
(APL), tj. programem komputerowym przygotowanym na konkretne potrzeby użytkownika.
Wielu użytkowników może pracować jednocześnie, korzystając z różnych aplikacji i tych
samych danych.
System zarządzania bazą danych (SZBD) zapewnia bezkonfliktowe użytkowanie wspólnych
danych. SZBD oferuje odpowiedni język manipulacji danymi (DML) dla potrzeb
przeszukiwania zbiorów danych. Istnieje również język definicji danych (DDL),
zapewniający opis logicznej struktury danych. Niezbędna jest ponadto pewna organizacja
fizycznego zapamiętywania danych na nośnikach magnetycznych (DSDL).
Hardware stanowią: urządzenia do przetwarzania danych, a w tym urządzenia pamięci
masowej (głównie Hard Disk) do zapisywania danych na nośnikach magnetycznych.
Użytkownik
Użytkownik
Użytkownik
Program użytkowy
(APL)
Program użytkowy
(APL)
Program użytkowy
(APL)
. . . .
Język manipulacji danymi (DML)
Język definicji danych. Logiczna struktura danych (DDL)
Fizyczne zapamiętywanie danych na nośnikach (DSDL)
Hardware (urządzenia pamięci masowej)
S
Z
B
D
ARCHITEKTURA TECHICZA BAZ DAYCH – SIEĆ LA
W sensie technicznym baza danych jest obsługiwana przez sieć komputerową LAN (ang.
Local Aera etwork). Istnieje segment sieci LAN, do którego podłączone są komputery
klientów (jeden lub więcej) oraz komputer z serwerem bazy danych (zwykle jeden).
Komputery po stronie klienta i komputery po stronie serwera są obsługiwane przez
odpowiedni system operacyjny (WIN).
Baza danych dysponuje odpowiednim oprogramowaniem zapewniającym sprawną
komunikację pomiędzy klientami i serwerem bazy danych.
Ponadto istniej możliwość wspólnego użytkowania w sieci różnych ograniczonych zasobów,
np. Drukarek.
W ramach sieci LAN istnieje specjalny protokół komunikacyjny do przesyłania danych
pomiędzy stacjami roboczymi a serwerem. Administrator bazy danych ma obowiązek
uzgodnienia
odpowiedniego
interfejsu
komunikacyjnego
pomiędzy
komputerami
współdziałającymi w ramach wspólnej bazy danych.
LAN
WIN
WIN
KlBD
SeBD
APL
DANE
ROZPROSZOA BAZA DAYCH – SIEĆ WA
K – klient bazy danych
LAN – lokalna sieć komputerowa (ang. Local Aera etwork)
CZD – wspólne centralne zbiory danych
S – lokalny serwer bazy danych
LZD – lokalne zbiory danych
Baza danych działa w ramach sieci WAN (ang. Wide Aera etwork) w trybie rozproszonym.
Sieć WAN składa się z wielu sieci LAN wzajemnie ze sobą powiązanych. W ramach takiej
wspólnej sieci komputerowej działa więcej niż jeden serwer bazy danych, a zbiory danych
mogą być w znacznym stopniu rozproszone. Dane mogę być obsługiwane przez serwery
lokalne oraz cześć danych może być wyłączona do wspólnego użytkowania w ramach sieci
WAN. Sieci WAN budują na swoje wewnętrzne potrzeby korporacje międzynarodowe.
CZD
K
K
S
S
K
K
LZD
LZD
LAN
LAN
ARCHITEKTURA KLIET-SERWER
Funkcje (zadania) systemu przetwarzania danych:
Prezentacja – wyświetlanie na ekranie danych w trakcie przetwarzania
Sterowanie – sterowanie przepływem danych w urządzeniach komputerowych
Aplikacja – przetwarzanie danych według logiki zdefiniowanej przez użytkownika
Zarządzanie danymi – zapisywanie i wywoływanie danych na potrzeby aplikacji
Zbiory danych – przechowywanie danych do ponownego przetwarzania.
Architektura klient – serwer (K/S) zapewnia podział zadań z zakresu przetwarzania danych
pomiędzy stację roboczą klienta a program zwany serwerem bazy danych.
W praktyce występuje sześć indywidualnych przypadków podziału zadań pomiędzy
klienta i serwer [(1).....(6)].
Modelu (1) – tylko prezentacja na stacji klienckiej (terminal), a pozostałe zadania są
wykonywane na serwerze, tzw. rozproszona prezentacja
Model (2) – prezentacja i sterowanie na stacji klienckiej, a pozostałe zadania są wykonywane
na serwerze, tzw. prezentacja na odległość
Model (3) – model (2) plus podział zadań w ramach aplikacji, a reszta zadań na serwerze, tzw.
praca grupowa
Model (4) – model (2) plus cała aplikacja na stacji klienckiej, a na serwerze zarządzanie
danymi i zbiory danych, tzw. zapamiętane algorytmy przetwarzania
Model (5) -
Model (6) - całość zadań jest wykonywana na stacji roboczej klienta, a część zbiorów danych
jest utrzymywana na serwerze, tzw. rozproszony bank danych.
W konkretnych zastosowaniach baz danych należy wybrać konkretny model podziału żądań
pomiędzy stacje klienckie i serwer bazy danych.
prezentacja
prezentacja
prezentacja
prezentacja
prezentacja
prezentacja
sterowanie
aplikacja
zarządzanie
danymi
zbiory
danych
Rozproszona
prezentacja
sterowanie
aplikacja
zarządzanie
danymi
zbiory
danych
Prezentacja
na odległość
sterowanie
aplikacja
aplikacja
zarządzanie
danymi
zbiory
danych
Praca
grupowa
sterowanie
aplikacja
zarządzanie
danymi
zbiory
danych
Zapamiętane
algorytmy
przetwarzania
sterowanie
aplikacja
zarządzanie
danymi
zbiory
danych
Rozległe
banki
danych
sterowanie
aplikacja
zarządzanie
danymi
zbiorydanych
zbiory
danych
Rozproszony
bank danych
PODZIAŁ FUKCJI SYSTEMU W ARCHITEKTURZE KLIET/SERWER
(1)
(2)
(3)
(4)
(5)
(6)
Klient
Serwer
KLIET BAZY DAYCH
Powyżej przedstawiono przykładowe okno przeznaczone do obsługi klienta bazy danych.
Okno MDI, system wielookienkowy, przełączanie pomiędzy poszczególnymi oknami. Menu
rozwijane oraz okna tabelaryczne. Pełna integracja w ramach systemu Windows.
ITERFEJS GUI
Użytkownik jako klient bazy danych posługuje się odpowiednim interfejsem graficznym
podczas użytkowania konkretnych aplikacji bazodanowych. Interfejs GIU (ang. Graphical
User Interface) jest de facto standardem światowym w zakresie definiowania komunikacji
okienkowej użytkownika z bazą danych. Standard ten wywodzi się z systemu Windows,
podstawową jego cechą jest stosowanie w procesie obsługi aplikacji użytkowej systemu
wielookienkowego (MDI). Istnieją specjalne elementy okienkowe pomocne przy
definiowaniu konkretnej obsługi użytkownika: Pole danych, Wieloliniowe pole danych,
Grupa pól, grupa przycisków, pole opcji, pole wyboru, lista rozwijana, belka narzędziowa.
Wszystkie te elementy są stosowane przez programistę podczas komponowania konkretnego
wielookienkowego układu obsługi konkretnej aplikacji użytkowej.
Lista rozwijana
Pole opcji
Pole wyboru
Pole danych
Wieloliniowe
pole danych
Grupa pól
Belka
narzędziowa
Grupa
przycisków
SERWER BAZY DAYCH
Zestaw programów komputerowych wspomagających wybrane zadania:
Tworzenie baz danych
Obsługa zapytań i aktualizowanie danych
Wielozadaniowość
Utrzymywanie dzienników systemowych
Utrzymywanie integralności bazy danych
Zarządzanie bezpieczeństwem danych
SQLTALK
PL1
Serwer bazy danych to odrębny program komputerowy do zarządzania danymi. Serwer
obsługuje pewną grupę zadań z zakresu przetwarzania danych. Bazy danych tworzone są na
bazie skryptu bazy danych, tj. zestawu komend SQL opisujących zasady tworzenia bazy.
Serwer umożliwia obsługę zapytań do bazy (Select) oraz aktualizowanie danych (komendy:
Insert, Update, Delete). Serwer powinien zapewniać możliwość jednoczesnego korzystania z
bazy danych większej grupie użytkowników, z których każdy może wykonywać swoje
specyficzne zadania (wielozadaniowość). Wszelkie operacje na danych wykonywane przez
konkretnego użytkownika są odnotowywane w dziennikach systemowych, tak aby w razie
nieprzewidzianego przerwania przetwarzania można było odtworzyć dany przebieg od tego
miejsca, gdzie nastąpiła przerwa. Ponadto w dziennikach systemowych zapisywana jest
historia przetwarzania.
Integralność bazy danych jest zapewniania w ten sposób, że w strukturze bazy danych
przewidziano relacje pomiędzy tabelami SQL. Relacja jest konkretnym poleceniem dla
serwera nie dopuścić do wykonania pewnej operacji na danych gdy jest to niewskazane, np.
skasować zapis w tabeli podrzędnej, jeżeli nie został wcześniej skasowany w tabeli
nadrzędnej (prze relacji Restrict).
Bezpieczeństwo danych jest zapewnione poprzez odpowiednie szyfrowanie danych oraz
poprzez profesjonalne zarządzanie użytkownikami i prawami użytkowników bazy danych.
Istnieją pakiety programowe do administrowania serwerem bazy danych. SQLTalk to pakiet
do administrowania serwerem SQLBase, a PL1 to pakiet do administrowania serwerem
Oracle.
STRUKTURA BAZY DAYCH
Powyżej przedstawiono model danych dla pewnej konkretnej bazy danych. Jest model danych
w notacji SQL. Modelowanie danych jest rodzajem formatowania danych. Mówimy format
danych w notacji SQL. W tym konkretnym przypadku jest to notacja SERM (ang. Structured
Entity Relationsship Model)
2
W powyższym modelu znajdujemy dwa rodzaje tabel SQL, tabele nadrzędne i tabele
podrzędne. Relacje (łuki) służą do wyrażenia zależności pomiędzy tabelami. W każdej tabeli
znajdują się pola danych zwykłe i pola danych kluczowe. W tabeli Klient np. pola danych
zwykłe to: Nazwa klienta, rodzaj klienta, data transakcji, oraz pole kluczowe: numer klienta.
Pole kluczowe jest dziedziczone w tabeli Adresy ( poprzez relację: KLI_ADR), gdzie również
jest polem kluczowym oprócz np. numeru adresu.
Relacja ma za zadanie zapewniać spójność danych w bazie danych. Istnieją trzy sposoby
zarządzania relacjami w bazie danych: Restrict, Delete, Set Null.
Model danych w notacji SQL stanowi podstawę do wygenerowania skryptu bazy danych.
2
K.Ferstl, E.Sinz, Grundlagen der Wirtschaftsinformatik, Band 1, Oldenbourg, Wien 2001 lub Z.Biniek, Analiza
systemowa i projektowanie baz danych SQL, INFOPLAN, Warszawa 1998
POS
KLIENT
POS
OFERTY
POS
ZLECENIA
POS
PRODUKTY
POS
POZ_OFER
POS
POZ_ZLEC
POS
ADRESY
POS
OF_KLIENTA
KLI_ADR
KL_OFKL
OF_OFKL
OFK_POZOF
ZLE_POZLE
PR_POFE
PRO_POZL
JĘZYK BAZY DAYCH SQL
Za pomocą SQL można:
tworzyć tablice w bazach danych,
zapamiętywać dane,
pobierać dane,
zmieniać dane oraz strukturę zdefiniowanych tablic,
zestawiać i kalkulować dane,
kontrolować dostęp do danych
DDL - komendy definicji zasobów (Data Definition Language) CREATE
TABLE, CREATE EVENT, CREATE INDEX, CREATE TRIGGER
CREATE VIEW, ALTER TABLE, DROP, ERASE
DML - komendy operowania danymi (Data Manipulation Language)
DELETE, INSERT, UPDATE
DQL - komenda zapytań (Data Query Language)
SELECT
SQL to Structured Query Language, angielski skrót strukturalnego języka zapytań i definicji
danych w bazach danych. SQL jest standardem światowym dla baz danych IV generacji.
3
Zadania języka SQL w sferze zarządzania danymi w bazach danych. SQL składa się z
modułów: DDL, DML, DQL i komend: CREATE, DELETE, SELECT. Każda komenda SQL
ma swoją specyficzną składnie.
Dane gromadzone są w tabelach (TABLE) i w tabelach wirtualnych (VIEW), a konkretne
wartości wpisywane są do kolumn w tabelach.
TRIGGER to wyzwalacz, pozwala na uruchomienie przebiegu przetwarzania bezpośrednio na
serwerze, tzw. procedura serwerowa.
3
Zobacz: Z.Biniek, Administrowanie baz danych SQL, INFPLAN, Warszawa 1999
SKRYPT BAZY DAYCH
Connect
nowa;
grant connect to
jan;
identified by
jan;
grant dba
to jan;
create table
jan.tabela1 (id_t1 number not null
nazwa1 char(30)
) pctfree 10;
commit
;
disconnect
nowa;
exit;
Skrypt bazy danych to zestaw komend języka SQL wraz z definicjami własnymi niezbędnych
do utworzenia własnej bazy danych. Powyżej przedstawiono przykładowy skrypt baz danych
„nowa”. Komendą „grant connect to jan” nadano uprawnienia użytkownika bazy o naziw
„jan”. Komenda „grant dba” nadano temu użytkownikowi uprawnienia administratora bazy
danych „dba”.
Komendą „create table” utworzono tabelę SQL o nazwie „tabela1”. W nawiasie zdefiniowano
strukturę danych – nazwy pól danych i ich obrazy.
Komenda „commit” służy do zatwierdzenia transakcji, a komenda „disconnect” do
rozłączenia się klienta z bazą.
KOFIGURACJA BAZ DAYCH
Konfiguracja bazy danych należy do zadań administratora bazy danych. Używając
specjalnych programów konfiguracyjnych administrator bd. definiuje parametry niezbędne do
tego aby można było uzyskać połączenie pomiędzy stacją kliencką i serwerem bazy danych.
Administrator definiuje protokół transmisji danych, lokalizację serwera bazy danych oraz
nazwy baz danych umieszczone na serwerze. Parametry konfiguracyjne są zapisywane w
pliku sql.ini
Jednym z parametrów do uzgodnienia jest wybór protokołu komunikacyjnego dla
użytkowników bazy danych w ramach sieci LAN/WAN (Local connection, IPX/SPX,
NetBIOS, TCP/IP)
4
. Można ograniczać dostęp do konkretnych baz danych na serwerze.
4
Z.Biniek, Administrowanie bazami danych SQL, INFOPLAN, Warszawa `1998
PRZETWARZAIE TRASAKCJI
Co to jest transakcja
?
W języku potocznym transakcja to ciąg czynności, składających się na jedną
całość,która może zakończyć się jednym z dwóch możliwych wyników:
sukces - transakcja jest zatwierdzana, porażka - wszystkie czynności są
odwoływane i transakcja jest nieważna
PRZYKŁAD TRASAKCJI
Konkretnym przykładem może być złożenie zamówienia w sklepie, na które
składa się następujący ciąg pojedynczych czynności:
1)Wybór towaru,
2)Sprawdzenie czy towar jest dostępny,
3)Pomniejszenie zapasów w magazynie,
4)Płatność kartą,
5)Potwierdzenie, że jest pokrycie na towar,
6)Pomniejszenie stanu konta,
7)Wydanie towaru.
Oczywiście jest to pewne uproszczenie rzeczywistości, ale chodzi o samą
zasadę. Załóżmy, że jesteśmy w pkt. numer 5. Okazuje się, że klient nie ma
wystarczająco gotówki, a my już zmniejszyliśmy stan zapasów w magazynie.
Klient się rozmyśla, a my mamy "manko" w towarze. Jeśli to będzie transakcja
to wszystkie czynności muszą zostać odwołane. Czyli anulowane jest
pomniejszenie stanu zapasów itd.
TRASAKCJE W BAZIE DAYCH
Transakcje w bazie danych
Niemal wszystkie profesjonalne bazy danych posiadają wbudowany mechanizm
obsługi transakcji. Jest tak np. serwer bazy danych jest zwykle wyposażony w
specjalny mechanizm obsługi transakcji. Aby transakcja mogła być
przeprowadzona, musimy to jawnie zaznaczyć.W tym celu użyjemy metody
BeginTrans obiektu Connection. Zatwierdzenie transakcji odbywa się poprzez
wywołanie metody CommitTrans, natomiast odwołujemy wywołując metodę
RollbackTrans. Skąd mam wiedzieć odwołać czy nie odwołać transakcji?O
tym czy chcemy odwołać transakcję informuje nas kolekcja Errors obiektu
Connection, która zwraca ilość błędów jakie zostały wykryte.
REPLIKACJA DAYCH W BAZACH DAYCH
Replikacja danych jest stosowana w bazach danych wszędzie tam, gdzie zachodzi potrzeba
uaktualniania danych pomiędzy terytorialnie rozproszonymi bazami danych. Jeżeli np. mamy
sprzedawców (handlowców), którzy przemieszczają się z miejsca na miejsce używając
notebooka, wtedy zachodzi potrzeba stworzenia mechanizmu replikacji danych pomiędzy
centralnym serwerem, a lokalnymi klientami posiadającymi własne lokalne bazy danych.
Mechanizm replikacji polega na systematycznym uaktualnianiu tych samych danych w
różnych bazach danych, najczęściej terytorialnie rozproszonych.