Šema baze ja data u nastavku:

Slika baze semenki - kao na tabli

Redosled rada:

  1. CREATE DATABASE BazaSemenki;
  2. Zatim kreirati tabele redom - prvo one koje nemaju Foreign key
        (ne zaboravite ili da selektujete bazu nad kojopm radte ii da koristite naredbu USE BazaSemenki;)
    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)
      );

      CREATE TABLE Uvoznik
      (
         UvoznikID INT PRIMARY KEY,
          Naziv   VARCHAR(255),
          MestoID INT,
         CONSTRAINT FK_U_M FOREIGN KEY (MestoID) REFERENCES Mesto(MestoID)
      );

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

      ALTER TABLE Semenke

          ADD CONSTRAINT FK_S_P FOREIGN KEY (ProizvodjacID) REFERENCES Proizvodjac(ProizvodjacID);

      ALTER TABLE Semenke
        ADD CONSTRAINT FK_S_U FOREIGN KEY (UvoznikID) REFERENCES Uvoznik(UvoznikID);
  3. slika izvedena iz dizajnera
  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 Uvoznik (UvoznikID, Naziv,MestoID)
    VALUES    (1, 'Sima', 1),
                     (2, 'Simek', 2),
                     (3, 'Margo', 1);
    INSERT INTO Semenke (ID, Naziv,ProizvodjacID,UvoznikID)
    VALUES    (1, 'Kikiriki', 1, 1),
                     (2, 'kukuruz', 2, 2),
                     (3, 'Salama', 3, 3);
    INSERT INTO Semenke (ID, Naziv)
    VALUES    (4, 'Bele semenke'),
                     (5, 'Suncokret'),
                     (6, 'Indijski orah');
  8. Korisnik je taj koji vodi računa o tačnosti podataka koje se unose !
Last modified: Wednesday, 29 October 2025, 9:21 AM