rózne

background image

• potrzeba powstała bardzo dawno
• informacja jako zasób była

gromadzona od zawsze

• technologia informacyjna dostarcza

narzędzi ułatwiających
przetwarzanie informacji

• Biblioteki

• Katalogi

• Spisy

• Archiwa policyjne ...

Zbiory danych - historycznie

background image

• Zgodność z rzeczywistością
• Dostępność w wymaganym czasie
• Forma sprzyjająca zrozumieniu
• Niewielki koszt przechowania

informacji

• Niewielki koszt uzyskania

informacji

• Dostępność tylko dla

uprawnionych

• Trwałość
• Mobilność
• Niewielkie rozmiary ...

CECHY DOBREJ INFORMACJI

background image

• Systemy ewidencyjne (sprzedaży,

wypożyczeń, kadry, płace, ZUS, ...)

• Systemy kontroli

• Systemy rezerwacji zasobów

• Archiwa – przechowalnie

informacji historycznej

• Systemy wyszukiwania informacji

• Systemy analizy informacji

• Krótko mówiąc wszędzie ...

GDZIE JEST POTRZEBNA DOBRA

INFORMACJA

background image

Era

Generacja Orientacja na

Główne cechy

1960

Pierwsza

Zbiory

Struktury plikowe dostęp

sekwencyjny

1970

Druga

Sieci i struktury

sieciowe

Informacje powiązane

sieciowo lub

hierarchicznie, dostęp

bezpośredni

1980

Trzecia

Relacje

Języki nieproceduralne

(co, a nie jak),

optymalizacja,

przetwarzanie

transakcyjne

1990

Czwarta

Obiekty

Multi-media, aktywne

bazy danych,

rozproszenie,

przetwarzanie danych

biznesowych

Generacje systemów gromadzenia danych

background image

• Trwałość danych

– Bazy danych trwają w czasie przez długi czas

• Związki z określonymi dziedzinami

– BD obejmuje jakąś określona dziedzinę życia

(biblioteka, magazyn, ewidencja kadr)

• Związki pomiędzy elementami z tej

dziedziny

– Osobami, rzeczami

• Ograniczenia obowiązujące w tej

dziedzinie

• Dostępność

– Wielu użytkowników pracujących równolegle

– Wielokrotność użycia – tysiące dostępów

Charakterystyka bazy danych

background image

Jakie problemy rozwiązują BD?

Niespójność i redundancja danych

Niektóre informacje mogą być obecna w wielu miejscach.

• rózne kopie danych mogą przechowywać różne informacje.
Które sa prawdziwe?

Trudności w dostępie do danych

• Dane zostają udostępnione w jednolitej postaci dla każdej
aplikacji,

• Wydobywanie złożonych informacji w relatywnie prosty
sposób.

Integracja danych

Ujednolicenie danych z różnych formatów.

• Ujednolicenie danych z różnych źródeł.

• Ujednolicenie danych o różnym rozumieniu.

Jednoczesny dostęp do danych

• Szybka i rownoległa obsługa wielu użytkowników.

• zapewnienie spójności danych podczas tych dostępów.

background image

Jakie problemy rozwiązują BD?

Właściwa ochrona danych

• Dostęp do danych tylko przez uprawnionych
użytkowników.

• Fizyczna ochrona danych – tworzenie archiwów,
kopii zapasowych

•Odtwarzanie danych po awariach

Uwzględnianie ograniczeń

• Zapewnianie przestrzegania nałożonych
ograniczeń na dane.

Zapewnienie rozwiązania tych problemów
przerzucono na systemy zarządzania bazą

danych

background image

Rynek oprogramowania baz danych

• Korporacyjne SZBD (Enterprise

DBMS)

– Oracle: dominuje w środowisku UNIX;

poważny dostawca dla NT

– SQL Server: dominuje w środowisku NT
– Informix: poważny dostawca dla

środowiska UNIX

– DB2: poważny dostawca dla środowiska

mainframe

• Biurowe SZBD (Desktop DBMS)

– Access: dominuje w środowisku Windows
– FoxPro, Paradox, Approach, FileMaker

Pro

background image

Składniki systemu z bazą danych

• Kolekcje danych
• Użytkownicy:

– programiści
– projektanci
– administratorzy
– użytkownicy końcowi

• programy aplikacyjne

background image

Database System

Components

Provides programming
language and interfaces
to programming
languages

background image

Zawartość kolekcji danych

• Dane użytkowników (książki,

pracownicy, materiały, rachunki, ...)

• Metadane

– dane opisujące strukturę bazy, formaty

danych

• Dane aplikacji

– procedury przechowywane, zapytania

(widoki), schematy raportów, formatki, ...

• Indeksy

background image

Baza danych

• metoda strukturalizacji zarządzania

informacją

• dotyczy fragmentu rzeczywistości i

stanowi kolekcję danych

• część systemu informacyjnego
- aplikacja bazy danych

(oprogramowanie)

- system informatyczny (sprzęt)

background image

Cechy bazy danych

• trwałość (aplikacja powinna

działać przez długi okres czasu –
dane przechowywane „latami”)

• zgodność z rzeczywistością

zmiana rzeczywistości musi być

uwzględniona w bazie danych

background image

W bazie danych, musimy

• kontrolować redundancję

(powtarzanie się danych)

• jeden fakt powinien być

reprezentowany na jeden sposób

– problem dostępności i dokładności

poszukiwanych danych (czas dostępu
oraz nadmiar danych)

background image

Podsumowanie charakterystyk

bazy danych

• Trwałość
• Bezpieczeństwo
• Jednolitość
• Oddzielenie danych od procedur

• Wzajemne powiązanie danych

• Współużytkowanie

background image

Składniki systemA Closer

Look at a Database

System

• The four basic elements of a database

are:

– Users

• input, modify or delete data

– Database Applications

• Forms, reports, queries

– Database Management System (DBMS)

• Structured Query Language (SQL)

reads and

writes requests for the DBMS, to generate forms,
reports, queries

– Database

background image

Motywy powstania technologii

baz danych

Powtarzalność (redundancja) danych

Jedna informacja występuje w kilku miejscach

Niespójność danych

Nie wszystkie kopie zawierają tą samą informację

Trudności z dostępem do danych

Dane występują w różnej postaci, w różnych plikach,

Brak zunifikowanego podejścia utrudnia budowanie aplikacji
z bazą danych,

Trudności w obsłudze wielu użytkowników
jednocześnie

Zapewnienie równoległości w dostępie do danych,
zapewnienie odpowiedniego działania dla równoległych
operacji (zapewnienie spójności danych).

Trudności w zapewnieniu autoryzowanego
dostępu do danych

Kontrola nad dostępem
Zarządzanie użytkownikami i prawami dostępu.

background image

Model relacyjny - przegląd

Model wprowadzony przez E. Coddaw roku 1970
operty o teorię zbiorów

relacyjna baza danych składająca się z kolekcji
powiązanych tabel, z których każda ma unikalną
nazwę
.

Każdą informację można zapisac w postaci
dwuwymiarowej tablicy
Nazwy kolumn odpowiadają atrybutom obiektów,
W wierszach zapisywane są informacje o
poszczególnych obiektach.
teoria obejmuje:

• algebrę relacji
• teorię normalizacji
•inne teorie (rachunek predykatów, obsługę wartości
NULL, ...)

background image

Attribute

value

IDName

s1

s2

s3

s4

s5

Toan

Alice

Tom

Sue

Steve

STUDENT

GPA

3.7

4.0

3.0

2.9

3.5

. . .

Relation

(Entity Set/Table) Name

Attribute Name

Tuples

(Rows or

Entities)

Attributes/Columns

Relations (Entity

Sets/Tables)

An attribute name must be unique
An attribute of a tuple cannot be multi-valued
An attribute value cannot be complex

An attribute value cannot be a pointer
Values in a column have same type
There are no two identical tuples
The order of tuples is inessential

Constraints:

background image

Database Technology

Evolution

Era

Generation

Orientation

Major Features

1960s

1

st

Generation

File

File structures and

proprietary program

interfaces

1970s

2

nd

Generation

Network

Navigation

Networks and hierarchies

of related records,

standard program

interfaces

1980s

3

rd

Generation

Relational

Non-procedural

languages, optimization,

transaction processing

1990s

4

th

Generation

Object

Multi-media, active,

distributed processing,

more powerful operators

background image

Rynek SZBD

• Korporacyjne SZBD

– Oracle: dominuje na UNIXie
– SQL Server: dominuje na NT
– Informix: duży udział Unix
– DB2: dominuje na maszynach mainfraime

• Biurowe SZBD

– Access: dominuje w systemach Windows
– FoxPro, Paradox, Approach, FileMaker Pro

background image

Zarys SZBD

• Relational model basics

– Tabele
– relacje

• Reguły poprawności

– na atrybutach
– na wierszach
– na tabelach

• Reguły na tabelach powiązanych
• Języki oparte o algebrę relacji

background image

Co to jest transakcyjny SQL

Najprościej:
Transakcyjny SQL =

zdania języka dostępu do danych +
instrukcje sterujące

background image

Po co transakcyjny SQL

Umożliwia przechowywanie w bazie
danych nie tylko danych ale również:

1. Reguł biznesowych,
2. Reguł integralności niemożliwych do

zapisana innymi sposobami,

3. Scentralizowanych procedur

przetwarzania danych,

4. Funkcji.

background image

Cechy transakcyjnego SQL

1. W pełni funkcjonalny język programowania,
2. Brak interfejsu graficznego,
3. Polecenia specyficzne dla obsługi baz danych,
4. Brak narzędzi programistycznych

(specjalizowany edytor, debugger),

5. Służy do programowania działań po stronie

serwera,

6. Optymalizowany na szybkość wykonania kodu,
7. Niezbędny do zaprogramowania niektórych

operacji

8. Wykorzystywany do kodowania funkcji

użytkowników, procedur przechowywanych,
triggerów

background image

Cechy transakcyjnego SQL

1. W pełni funkcjonalny język programowania,
2. Brak interfejsu graficznego,
3. Polecenia specyficzne dla obsługi baz danych,
4. Brak narzędzi programistycznych

(specjalizowany edytor, debugger),

5. Służy do programowania działań po stronie

serwera,

6. Optymalizowany na szybkość wykonania kodu,
7. Niezbędny do zaprogramowania niektórych

operacji

8. Wykorzystywany do kodowania funkcji

użytkowników, procedur przechowywanych,
triggerów

background image

Elementy transakcyjnego SQL

1.

Zmienne takich samych typów jak pola

w bazie danych

2.

Instrukcje sterujące: IF, FOR, WHILE

3.

Nawiasy logiczne BEGIN..END

4.

Możliwość deklarowania funkcji –

funkcje zwracają wartość ale nie

można wewnątrz nich wykonywać

działań na bazie,

5.

Możliwość deklarowania procedur

6.

Deklarowanie triggerów – procedur

wykonywanych w reakcji na określone

zdarzenia w bazie danych

background image

Przykład prostej funkcji

CREATE FUNCTION pierwsza_duza (@tekst varchar(50))
RETURNS varchar(50)
as
BEGIN
declare @pierwszy_znak

varchar(1)

declare @reszta

varchar(49)

set @pierwszy_znak = upper(left(@tekst,1))
set @reszta = substring(@tekst, 2, len(@tekst)-1)
return @pierwszy_znak+ lower(@reszta)

END

Wywołanie:
select dbo.pierwsza_duza('ALABASTER')
WYNIK:
Alabaster

background image

Przykład prostej funkcji 2

create function aa(@x int,@y int) returns int
as
begin

declare @wynik int
if @x > @y

begin

set @wynik = @x+@y

end

else

begin

set @wynik = @x-@y

end

return(@wynik)
end

background image

Przykład prostej procedury

create PROCEDURE generuj

@ile int = 100

AS
DECLARE

@i integer

DECLARE

@los varchar(20)

DECLARE

@znak varchar(1)

set @i =1
while @i<@ile
begin
set @los = replicate(char(rand()*65+33),round(rand()*20,0))
insert into probna values(@los , null, null)
set @i=@i+1
end

Wywołanie:
exec generuj 400
Sprawdzenie:
select * from probna

create table probna (
id_rek integer
identity (1000,1),
tekst varchar(20),
liczba numeric (8,2),
random float

)

background image

Co to jest kursor?

Kursor można rozumieć jako połączenie

dwóch elementów:

• Wybranego (zwykle niepustego) podzbioru

wierzy danej tabeli lub widoku

• Wskaźnika pokazującego tzw. bieżący

rekord

Kursory umożliwiają przetwarzanie informacji

w trybie rekord-po-rekordzie. W
przeciwieństwie do przetwarzania całych
tabel tak jak w poleceniach UPDATE SQL-
a.

background image

Jak używać kursora?

1.

Kursor należy zadeklarować – do kursora

wybieramy te wiersze i pola, które

zamierzamy jakoś przetwarzać
DECLARE nazwa_kursora CURSOR
FOR SELECT zdanie _select
[FOR UPDATE OF lista_pol]

2.

Kursor należy otworzyć
OPEN nazwa_kursora

3.

Pobierać kolejne rekordy
FETCH nazwa_kursora INTO list_pol

4. Po użyciu kursor zamknąć i zniszczyć

CLOSE nazwa_kursor
DEALLOCATE nazwa_kursora

background image

Przykład użycia kursora

ALTER procedure wyp_liczby

@od_ilu int, @co_ile int

AS
BEGIN
declare @pom_liczba numeric
declare all_rec cursor for select liczba from probna for update of

liczba

open all_rec
fetch all_rec into @pom_liczba
while @@FETCH_STATUS =0
begin

update probna set liczba = @od_ilu where current of all_rec
set @od_ilu = @od_ilu + @co_ile
print @od_ilu
fetch all_rec into @pom_liczba

end
close all_rec
deallocate all_rec
print '>>>>>>KONIEC<<<<<<'
end

create table probna (
id_rek integer
identity (1000,1),
tekst varchar(20),
liczba numeric (8,2),
random float

)


Document Outline


Wyszukiwarka

Podobne podstrony:
Diagnoza rozne podejscia teoretyczne
na niebie są widoczne różne obiekty astronomiczne
Różne rodzaje grzejników
Rozne typy zrodel historycznych
Mechanik rozne techniki
201 Czy wiesz jak opracować różne formy pisemnych wypowied…id 26951
8 Cwiczenia rozne id 46861 Nieznany
I KOMUNIA - RÓŻNE DZIĘKCZYNIENIA RODZICÓW, KATECHEZA, I Komunia - Scenariusze uroczystości
Ciekawostka o piwie, ###CIEKAWOSTK####, różne
Różne zapisy tych samych głosek, JęZYK POLSKI
laborka na za tydzień, laboratorium fizyczne, Laboratorium semestr 2 RÓŻNE
trening klatki, FIZJOTERAPIA, Różne, Trening
metody Klejeni i lutowania( Tech wyt z mat), technik bhp, rózne materiły z bhp
RODZINA, Różne
różne smakołyki, ROZNE (Zobacz), PRZEPISY KULINARNE
Pojęcia na egzamin z metali, Chemia Fizyczna, chemia fizyczna- laborki rozne, Rozne
pitanie, hist - drobne, różne

więcej podobnych podstron