Šema baze ja data u nastavku:

slika baze kao što je bila na tabli na času

Redosled rada:

  1. CREATE DATABASE Ketering;
  2. Zatim kreirati tabele redom - prvo one koje nemaju Foreign key
        (ne zaboravite ili da selektujete bazu nad kojom radte ii da koristite naredbu USE Ketering;)
    1. CREATE TABLE Mesto
      (
          MestoID INT PRIMARY KEY,
          Naziv   VARCHAR(255),
          Drzava VARCHAR(255)
      );
    2. CREATE TABLE Proizvodjac
      (
         ProizvodjacID INT PRIMARY KEY,
          Naziv   VARCHAR(255),
          MestoID INT,
         CONSTRAINT FK_P_M FOREIGN KEY (MestoID) REFERENCES Mesto(MestoID)
      );

    3. CREATE TABLE Sok
      (
          SokID INT PRIMARY KEY,
          Naziv   VARCHAR(255),
          ProizvodjacID INT
      );
    4. Pošto smo "zaboravili" neka ograničenja u tabelu Sok

      ALTER TABLE Sok

          ADD CONSTRAINT fk_s_p FOREIGN KEY (ProizvodjacID) REFERENCES Proizvodjac(ProizvodjacID);
    5. CREATE TABLE Pecivo
      (
          PecivoID INT PRIMARY KEY,
          Naziv   VARCHAR(255),
          ProizvodjacID INT,
      CONSTRAINT fk_p_p FOREIGN KEY (ProizvodjacID) REFERENCES Proizvodjac(ProizvodjacID)
      );
  3. slika kkako ti izgleda u dizajneru
  4. Zatim ubaciti podatke u bazu :
    1. Prvo

      INSERT INTO Mesto (MestoID, Naziv, Drzava) VALUES
          (1, 'Crvenka', 'Srbija'),
          (2, 'Sivac', 'Srbija'),
          (3, 'Tuzla', 'BiH'),
          (4, 'Ulcinj', 'Crna Gora');

      INSERT INTO Mesto (MestoID, Naziv) VALUES
          (5, 'Kula'),
          (7, 'Sarajevo'),
          (9, 'Tuzi'),
          (13, 'Užice');

      INSERT INTO Mesto (MestoID) VALUES  (15), (17), (19), (113);
  5. Izmeniti podatke ako je potrebno
    - u tabeli Mesto, za sve zapise u kojima se na nalazi naziv mesta da piše "Nepoznato mesto".
    UPDATE Mesto

     SET Naziv = "Nepoznato masto"
      WHERE Naziv IS NULL;
  6. Zatim se popunjavaju ostale tabele. Vodite računa o referencijalnom integritetu! To znači da se ne može dodati proizvođač koji je iz mesta koje nije uneseno u bazu!. Međutim, može se dodati Proizvođač kojem se samo ne navede mesto iz kojega je. Mesto ID može da se unosi direktno - ako znate napamet koji je ID za koje mesto, ili pomoću podupita.
    INSERT INTO Proizvodjac (ProizvodjacID, Naziv, MestoID)
    VALUES   (1, 'GALA', (SELECT MestoID FROM Mesto WHERE Naziv='Sivac'));

    INSERT INTO Proizvodjac (ProizvodjacID, Naziv)
    VALUES     (2, 'Pera Kojot'),
                     (3, 'Transformersi'),
                     (4, 'Jaffa');
  7. Zatim se na isti način unose podaci u ostale tabele: , ...

    INSERT INTO Sok (SokID, Naziv,ProizvodjacID)
    VALUES    (1, 'Zova', 1),
                     (2, 'Kola', 2),
                     (3, 'Mangita', 1);
    INSERT INTO Pecivo (PecivoID, Naziv,ProizvodjacID)
    VALUES    (1, 'Kikiriki kifla', 1),
                     (2, 'kukuruzna kifla', 2),
                     (3, 'Salama kiflice', 3);
  8. Korisnik je taj koji vodi računa o tačnosti podataka koje se unose !
Last modified: Sunday, 2 November 2025, 4:35 PM