/* I - grupa - sreda - 14-00 - 15-35 -- -- 1. nedelja - MEP model entiteta i poveznika projektor -- -- 2. nedelja - MEP pomocu SyBase PowerDesigner-a -- -- 3. nedelja - na prvom pravom laboratorijskom casu -- -- -- -- MS SQL server nije radio - bila je pokazna nastava -- -- 4. nedelja - 21-10-2015 -- Prva laboratorija -- -- create database, use, create table naredba, not null, unique, -- -- default, check, -- -- kljuc(primarni) i spoljni kljucevi, prosti/slozeni, alter table */ create database OtpremaRobe1; go use OtpremaRobe1; go create table Kupac (sif_kupca tinyint primary key, naz_kupca varchar(30), post_broj numeric(5), adresa varchar(20)); go create table Roba_cenovnik (sif_robe tinyint not null, jed_mere char(10) not null, naziv_robe varchar(20), jed_cena numeric(15,2), primary key(sif_robe,jed_mere)); go create table Otpremnica (br_otpremnice tinyint primary key, sif_kupca tinyint references kupac(sif_kupca), datum_otpreme date, vrednost_otpreme numeric(12,2)); go create table Stavka_otpremnice (sif_robe tinyint not null, jed_mere char(10) not null, br_otpremnice tinyint not null, otpremljena_kol numeric(10,2), primary key(sif_robe,jed_mere,br_otpremnice), foreign key(br_otpremnice) references otpremnica(br_otpremnice), foreign key(sif_robe,jed_mere) references roba_cenovnik(sif_robe,jed_mere)) go sp_help kupac; go alter table kupac alter column naz_kupca varchar(30) not null; go alter table kupac alter column post_broj numeric(5) not null go alter table kupac add constraint uc_post_broj check(post_broj between 20000 and 30000); go /* videti formu za default vrednost - post_broj da je 24000*/ /* -- -- 5. nedelja -- 28-10-2015 -- -- Druga laboratorija -- -- use, alter table, sp_help, insert, delete, update -- -- select */ -- novi cas - 28-10-2015 use OtpremaRobe1; go sp_help kupac go alter table kupac alter column post_broj numeric(5) default 24000 go -- ne ide ovako alter table kupac add constraint uc_def_za_post_broj default 24000 for post_broj go alter table kupac add telefon numeric(10) default 024666666 go alter table kupac drop constraint DF__Kupac__telefon__117F9D94 go alter table kupac alter column telefon char(10) go alter table kupac add constraint uc_def_za_telefon_char default '024666666' for telefon go sp_help otpremnica go alter table otpremnica drop constraint FK__Otpremnic__sif_k__08EA5793 go alter table otpremnica add constraint fk_prema_kupcu foreign key(sif_kupca) references kupac(sif_kupca) on delete no action on update cascade; go insert Kupac values(1,'KUPAC1',25500,'Prva kupceva adresa1',021666555) go select * from Kupac; go insert Kupac values(2,'KUPAC2',25555,'Druga kupc.adresa2',025666555) go sp_help otpremnica go insert Kupac(adresa,sif_kupca,naz_kupca) values('Treca kupc.adresa3',3,'KUPAC3') go select * from Otpremnica; go insert Otpremnica values(1,3,'2015.10.28',10000) go insert Otpremnica values(2,3,'10/27/2015',50000) go insert Otpremnica values(3,1,'2015-10-26',100000) go insert Otpremnica values(4,1,'10/24/2015',150000) go delete Kupac where sif_kupca=1; go delete Kupac where sif_kupca=2; go select * from Kupac go update Kupac set sif_kupca=11 where sif_kupca=1; go select * from Otpremnica; go /* -- -- 6. nedelja -- 04-11-2015 -- -- Treca laboratorija -- -- use, alter table-unique, sp_help, insert, delete, update -- -- select alter table kupac add unique(telefon); go ili navodjenjem imana ogranicenja: alter table kupac add constraint uc_jedinstven_telfon unique(telefon); go alter table kupac nocheck constraint uc_jedinstven_telfon; go alter table kupac check constraint uc_jedinstven_telfon; go alter table kupac drop constraint uc_jedinstven_telfon; go alter table otpremnica add constraint uc_datum_otpreme_ogranicenja check(datum_otpreme<=getdate()); go alter table otpremnica add constraint uc_datum_otpreme_default default getdate() for datum_otpreme; go insert into otpremnica values(7,3, getdate(), 15000000); go update otpremnica set datum_otpreme = GETDATE() where broj_otpremnice=3; go truncate table otpremnica; go create view Pogled_kupca as (select naz_kupca,sif_kupca,adresa,post_broj,telefon from kpac); go */ use OtpremaRobe1; go select * from Otpremnica; go alter table kupac add constraint uc_jedinstven_telefon unique(telefon); go select * from Kupac; go insert Kupac values(2,'KUPAC2',25500,'Dr kupceva adresa1','024666666') go alter table kupac nocheck constraint uc_jedinstven_telefon; go -- nocheck ogranicenje vazi samo za foreign key i check ogranicenja alter table kupac drop constraint uc_jedinstven_telefon; go insert into otpremnica values(7,3, getdate(), 15000000); go select * from Otpremnica; go update otpremnica set datum_otpreme = GETDATE() where br_otpremnice=3; go alter table otpremnica add constraint uc_datum_otpreme_ogranicenja check(datum_otpreme<=getdate()); go insert into otpremnica values(10,3, '2015-11-11', 11100000); go alter table otpremnica nocheck constraint uc_datum_otpreme_ogranicenja; go alter table otpremnica check constraint uc_datum_otpreme_ogranicenja; go select * from Kupac; go create view Pogled_kupca as (select naz_kupca,sif_kupca,adresa,post_broj,telefon from Kupac); go select * from Pogled_kupca; go insert Kupac values(5,'KUPAC5',24000,'5. kupceva adresa','024777777') go select * from dbo.Pogled_kupca go