Dostępne zagadnienia z Systemów Zarządzania Bazami Danych

System Zarządzania Bazą Danych, SZBD (ang. Data Base Management System, DBMS) nazywany też serwerem baz danych lub systemem baz danych, SBD to oprogramowanie bądź system informatyczny służący do zarządzania komputerowymi bazami danych. Systemy baz danych mogą być sieciowymi serwerami baz danych lub udostępniać bazę danych lokalnie.

Dodany przez: pukas
Polecenia służace do definiowania schematu bazy danych sa podzbiorem polecen SQL*Plus, czesto nazywanym jezykiem definiowania danych DDL. Umożliwiaja tworzenie i modyfikowanie podstawowych struktur relacyjnej bazy danych, takich jak relacje i perspektywy.


Tworzenie relacji

W celu utworzenia relacji stosujemy polecenie create table, o nastepujacym formacie ogólnym:

CREATE TABLE nazwa_relacji
(nazwa_atrybutu typ (rozmiar) [DEFAULT wartosc_domyslna]
[ [CONSTRAINT nazwa_ogr] ograniczenie_atr],
nazwa_atrybutu typ (rozmiar) [DEFAULT wartosc_domy lna]
[ [CONSTRAINT nazwa_ogr] ograniczenie_atr],
....
[ [CONSTRAINT nazwa_ogr] ograniczenie_rel, ...]

Nazwa relacji:

  • musi zaczyna sie od litery A-Za-z
  • może zawierac litery, cyfry, znaki _ $ # (ostatnie dwa nie sa zalecane)
  • jest nieczuła na wielkosc użytych znaków
  • nie może przekroczyc 30 znaków
  • musi byc jednoznaczna i różna od nazw innych relacji, perspektyw i synonimów w schemacie danego użytkownika
  • nie może byc słowem zastrzeżonym jezyka SQL

Jak widac, jest konieczne wyszczególnienie wszystkich atrybutów nowej relacji i ich typów. W jezyku SQL standardowo wyróżniamy nastepujace typy atrybutów:

typ danychDopuszczalna wartosc i opis
char(n) Ciag znaków o stałej długosci i rozmiarze n bajtów (domyslnie 1). Maksymalnie 2000B
varchar2(n) Ciag znaków o zmiennej długosci i rozmiarze n bajtów. Maksymalnie 4000B. Rozmiar n musi byc podany.
number(p,s) Liczba o precyzji p (1-38) i skali s (-84,127) z przedziału 1x10-130 9.9...9x10125
date Data z przedziału 1.01.4712 p.n.e. i 31.12.9999 n.e.
raw(n) Ciag bajtów o maksymalnym rozmiarze n=2000. Podanie rozmiaru n jest obowiazkowe.
long Ciag znaków o zmiennej długosci i maksymalnym rozmiarze 2GB
long raw Ciag bajtów o zmiennej długosci i maksymalnym rozmiarze 2GB
clob Duży obiekt binarny zawierajacy łancuchy znaków (stałej i zmiennej długosci) o maksymalnym rozmiarze 4GB.
blob Duży obiekt binarny o maksymalnym rozmiarze 4GB.
bfile Lokator dużego obiektu binarnego przechowywanego w systemie plików. Maksymalny rozmiar takiego obiektu to 4GB.
rowid Ciag szesnastkowy reprezentujacy adres logiczny krotki.

Wartosci domyslne atrybutów.

Każdemu atrybutowi można nadac domyslna wartosc poczatkowa. Robi sie to za pomoca słowa kluczowego DEFAULT.

Przykłady.

CREATE TABLE pracownicy (
d_prac NUMBER(6) NOT NULL,
nazwisko VARCHAR2(50) DEFAULT ‘Nowy pracownik’,
data_zatrudnienia DATE DEFAULT SYSDATE,
pensja NUMBER(6,2) DEFAULT 1000,
badania_kontrolne DATE DEFAULT SYSDATE+365,
etat VARCHAR2(20) DEFAULT ‚Stażysta’,
... );

CREATE TABLE dydaktycy (
id_dydaktyka NUMBER(2)
CONSTRAINT id_dydaktyka_pk PRIMARY KEY,
nazwisko VARCHAR2(15) NOT NULL,
tytuł VARCHAR2( 10) NOT NULL,
CONSTRAINT u_nazwisko UNIQUE (nazwisko) );

CREATE TABLE przedmioty (
id_przedmiotu number(2)
CONSTRAINT id_przedmiotu_pk PRIMARY KEY,
nazwa VARCHAR2( 5) NOT NULL,
CONSTRAINT u_nazwa_przedmiotu UNIQUE (nazwa));

CREATE TABLE zajecia (
id_zajec NUMBER(2)
CONSTRAINT id_zajec_pk PRIMARY KEY,
rodzaj_zaj VARCHAR2(15)
CONSTRAINT rodzaj_zaj_chk CHECK
(rodzaj_zaj IN
('wykład', 'cwiczenia', 'laboratorium', 'projekt' )),
id_dydaktyka NUMBER(2),
id_przedmiotu NUMBER(2) NOT NULL,
FOREIGN KEY (id_dydaktyka)
REFERENCES dydaktycy(id_dydaktyka)
ON DELETE SET NULL,
FOREIGN KEY (id_przedmiotu)
REFERENCES przedmioty(id_przedmiotu)
ON DELETE CASCADE);

Tworzenie relacji przez podzapytanie.

Wynik zapytania można zmaterializowac w postaci relacji.

  • Nowa relacja składa sie z atrybutów wymienionych w klauzuli SELECT zapytania;
  • Jesli podano list nazw atrybutów nowej relacji to lista atrybutów w klauzuli SELECT zapytania musi sie pokrywac z ta lista;

Przykład.

CREATE TABLE roczne_place (nazwisko NOT NULL, etat, roczne)
AS SELECT nazwisko, etat, 12*placa_pod + NVL(placa_dod, 0)
FROM pracownicy;

Modyfikowanie schematu relacji.

Dodawanie nowych atrybutów i ograniczen;

ALTER TABLE nazwa_relacji
ADD [ nazwa typ(rozmiar) [DEFAULT wartosc] ograniczenia |
CONSTRAINT nazwa typ ograniczenie ];

Modyfikowanie istniejacych atrybutów;

ALTER TABLE nazwa_relacji
MODIFY ( nazwa typ(rozmiar) [DEFAULT wartosc] [ NOT NULL ]);

Usuwanie atrybutów i ograniczen;

ALTER TABLE nazwa_relacji
DROP [ COLUMN (nazwa) | CONSTRAINT ( nazwa ) ];

Zarzadzanie ograniczeniami integralnosciowymi.

Właczanie ograniczenia integralnosciowego;

ALTER TABLE relacja
ENABLE [CONSTRAINT nazwa | rodzaj];
ALTER TABLE pracownicy
ENABLE CONSTRAINT prac_fk;

Wyłaczenie ograniczenia integralnosciowego;

ALTER TABLE relacja
DISABLE [CONSTRAINT nazwa | rodzaj];
ALTER TABLE pracownicy
DISABLE PRIMARY KEY;

Zmiana nazwy relacji, usuwanie relacji.

Zmiana nazwy istniejacej relacji

RENAME stara_nazwa TO nowa_nazwa;

Dodanie komentarza do relacji;

COMMENT ON TABLE relacja IS ‘komentarz’;
COMMENT ON COLUMN relacja.atrybut IS ‘komentarz’;

Usuniecie relacji;

DROP TABLE nazwa_relacji [ CASCADE CONSTRAINTS];
  • wszystkie dane sa usuwane z relacji;
  • wszystkie indeksy założone na relacji sa usuwane;
  • jeżeli nie podano CASCADE CONSTRAINT to polecenie może zakonczyc sie błedem (jesli istnieja relacje zależne)

Zobacz też inne materiały

Transakcje. Transakcje zagnieżdżone.
DML, Modyfikowanie zawartości relacji (tabel) bazy danych.
Funkcje SQL
Właściwości baz danych
Architektura baz danych
Funkcje SZBD (Systemu Zarządzania Bazami Danych)
Funkcje administratora SZBD
Modele danych - bazy danych

Powiązane kategorie

Systemy zarządzania bazami danych

Komentarze

  • Brak komentarzy

Dodaj komentarz

Aby dodawać komentarze, zaloguj się.
Nie masz jeszcze swojego konta na Wykłady.org? Zarejestruj się!.
Google
 

Wykłady.org to serwis kierowany do studentów i uczniów szkół średnich. Na stronach serwisu znajdziesz wiele materiałów z wykładów oraz opracowania lektur i przykładowe prace maturalne. Dowiedz się więcej.

Zapraszamy wszystkie osoby chętne do współpracy przy tworzeniu tego serwisu. Jeżeli posiadasz jakieś ciekawe materiały lub opracowania swojego autorstwa i nie łamiące praw autorskich i chcesz podzielić się nimi z innymi uczniami lub studentami, napisz do nas - opublikujemy Twoje prace w tym serwisie!

Rejestracja

Chcesz mieć możliwość wpływania na kształt portalu Wykłady.org? Zarejestruj się i pisz, komentuj, oceniaj, bierz udział w konkursach i wygrywaj nagrody!