262080082

262080082



CREATE TABLE Ksiazka (

ID INT PRIMARY KEY,

Tytuł VARCHAR(45),

LiczbaStr tinyint,

W_ID INT,

CONSTRAINT ks_FK_w FOREIGN KEY (W_ID) REFERENCES wydawnictwo(ID) ON DELETE CASCADE ON UPDATE CASCADE

bj_

Tak utworzona relacja dba o to, by dodawane rekordy w tabeli Ksiazka odnosiły się do odpowiedniego rekordy w tabeli wydawnictwa.

Usuwanie wierszy

Do usuwania wierszy w SQL służy polecenie DELETE, a schemat jego użycia ma postać DELETE FROM nazwa_tabeli WHERE nazwa_kolumny=wartosc Przykładem użycia polecenia DELETE jest usunięcie rekordu o ID równym 1 z tabeli książka DELETE FROM książki WHERE ID=1

Tworzenie relacji wiele-do-wielu

Relacja wiele-do-wielu nie jest możliwa do odwzorowania w relacyjnej bazie danych. Dlatego każda relacja wiele-do-wielu podlega procedurze normalizacji. W jej wyniku relacja wiele-do-wielu jest zamieniana na dwie relacje jeden-do-wielu (rys. 3). Takie działanie wymusza utworzenie trzeciej tabeli, która będzie przetrzymywać dwa klucze obce. Jeden z nich odnosi się do klucza głównego jednej, a drugi do klucza głównego drugiej tabeli będących w pierwotnej relacji.

Na rys. 3 pokazano znormalizowaną relacje wiele-do-wielu. Tabela Zapis zawiera dwa klucze obce. Jeden z nich, przechowywany w kolumnie Student ID przechowuje wartości kolumny ID z tabeli Student, która jest jej kluczem głównym. Drugi klucz obcy w tabeli Zapisy tj. Przedmiot ID, przechowuje wartości klucza głównego tabeli Przedmiot, który zdefiniowano na kolumnie ID tejże tabeli.

Po operacji normalizacji relacji wiele-do-wielu jej odwzorowywana w relacyjnej bazie danych jako dwie relacje wiele-do-jednego. Stąd jej utworzenie jest tożsame z napisaniem dwóch ograniczeń klucza obcego (CONSTRAINT FOREGINE KEY ). W przypadku modelu bazy danych, pokazanym na rys. 3, ograniczenie klucza obcego występuje pomiędzy tabelami Zapisy i Student oraz tabelami Zapisy i Przedmiot.

Wyszukiwanie informacji w relacyjnej bazie danych

Rozważmy fragment bazy danych Nordhwind pokazany na rys. 4



Wyszukiwarka

Podobne podstrony:
CREATE TABLE Wydawnictwo ( ID INT PRIMARY KEY, Nazwa VARCHAR(45), Adres VARCHAR<45)I); Następnym
skanuj0315 (2) 330 PHP i MySQL dla każdego CREATE TABLE Autorzy( Id INTEGER PRIMARY KEY. Imię VARCHA
Problem jajka i kury Rozważmy deklaracje create table Kura( id int primary key, j aj k o_ i d int re
39212 skanuj0333 (3) 348 PHP i MySQL dla każdegc CREATE TABLE Klienci! Id INTEGER AUTO INCREMENT P
skanuj0330 (2) Rozdział 12. ♦ Tworzenie bazy w praktyce 345 CREATE TABLE Zamówienie( Id INTEGER AU
Przykład:Create Table Nagrania (ID Char(lO), Tytuł Varchar2(30), Opis Varchar2(2000), Wykonawca
CREATE TABLE Droga ( nazwa VARCHAR(20) PRIMARY KEY, szczyt VARCHAR(15) REFERENCES Szczyt, trudn
Klucze obce Klucze obce deklarujemy jako create table Malzenstwaj maz int references Osoby(id), 
Problem jajka i kury Musimy utworzyć tabele Jajko i Kura bez deklaracji kluczy obcych:create table K
SQL Statement: CREATE TABLE Heroes (id int, name varchar(25), siblings int); Edit the SQL Statement,
Content CREATE TABLE App.Settings ( SessionID int PRIMARY KEY, WindowSettings xml
Document CREATE TABLE App.Settings ( SessionID int PRIMARY KEY, WindowSettings xml
Document CREATE TABLE App.Settings ( SessionID int PRIMARY KEY, WindowSettings xml

więcej podobnych podstron