U prethodnom SQL prilogu videli smo na koji naฤin se kreiraju tabele uz pomoฤ instrukcije CREATE TABLE. Pri tome smo spomenuli i drugu komandu ALTER TABLE, koja takoฤe pripada DDL (Data Definition Language) komponenti SQL jezika, a namenjena je za izmenu strukture postojeฤih tabela. Na primer, sa ovom instrukcijom moลพete da dodate novo ili obriลกete postojeฤe polje (kolonu), promenite tip postojeฤeg polja, ili moลพete samo preimenovati neko od polja. Ovo je vrlo bitna komanda koja ฤe vam u sluฤaju neuspeลกnog dizajna baze podataka ili u sluฤaju potrebe za dodavanjem novih obeleลพja, olakลกati posao.
Ova instrukcija radi na taj naฤin ลกto kada je pozovemo kreira privremenu kopiju originalne tabele, izvrลกi se izmena na kopiji tabele, pa se na kraju briลกe originalna tabela, a novoj se menja naziv u staru. Vaลพno je reฤi i da ฤe prilikom izvrลกavanja naredbe ALTER TABLE originalna tabela ostati u upotrebi, tj. biฤe dostupna ostalim klijentima (ako se radi o mreลพi). Sama fiziฤka izmena i upis nove tabele se ne vrลกi sve dok nova tabela nije spremna. Osnovna sintaksa naredbe ALTER TABLE je razliฤita kod razliฤitih SUBP, i u osnovi ima veฤi broj argumenata, a mi ฤemo navesti samo one najbitnije:
ALTER TABLE naziv_tabele
ADD novo_polje
ili
MODIFY postojece_polje [definicija]
ili
DROP postojece_polje
ili
RENAME postojece_polje TO novo_polje
…
;
I ovaj put za primere ฤemo koristiti tabelu „Radnik“ koju smo definisali putem SQL-a u prethodnom prilogu. Prvo ฤemo uz pomoฤ ALTER TABLE videti kako da izmenimo definiciju polja „SIF_R“ (ลกifra radnika – proลกirenje ovog polja, tako da u njega moลพe da stane 10 karaktera umesto 5) :
ALTER TABLE Radnik
MODIFY SIF_R Char(10) not null;
Za dodavanje novog polja u tabelu koristiฤemo sledeฤi izraz:
ALTER TABLE Radnik
ADD SS Char(4) not null;
Ovim smo tabeli dodali polje „Struฤna sprema“ (SS), a preimenovanje cele tabele bi bilo:
ALTER TABLE Radnik RENAME Sef;
Pratite Krstaricu na www.krstarica.com