Seminarski Rad Prodavnica Auto Dijelova

Embed Size (px)

DESCRIPTION

Cilj na kreirati bazu podataka koja će omogućiti praćenje prodaje auto dijelova. Potrebno je omogućiti praćenje stanja skladišta, cijene dijelova kod različitih dobavljača, prodaju svakog radnika pojedinačno. Za svaki od zahtjeva potrebno je napraviti pogled koji će služiti kao osnova za izvještaje

Citation preview

BLC BANJA LUKA COLLEGE

BLC BANJA LUKA COLLEGE

BANJA LUKA

MILOA OBILIA 30

SEMINARSKI RADBAZE PODATAKAProdavnica auto dijelovaPredmetni nastavnik:

Student:

Prof. dr Rade Tanjga

Dejan SvitlicaAsistent:

Broj indeksa: 434/2010Boris TodoroviBanja Luka, februar 2012.

1. Opis problema

Cilj na kreirati bazu podataka koja e omoguiti praenje prodaje auto dijelova. Potrebno je omoguiti praenje stanja skladita, cijene dijelova kod razliitih dobavljaa, prodaju svakog radnika pojedinano. Za svaki od zahtjeva potrebno je napraviti pogled koji e sluiti kao osnova za izvjetaje.2. Analiza i dizajn rjeenja

Potrebna su entiteti Dobavlja, Roba, Pazar, Radnik i Objekat. Dobavlja treba da ima atribute naziv, grad, ulica, broj i broj telefona. Smatra se da je dovoljan jedan telefonski boroj po dobavljau. Za entitet Roba pamte se atributi auto iji je roba dio, cijena robe, naziv, poreska stopa i jedinica mjere. Za entitet Pazar smjena, datum, redni broj, proknjieno i napomena. Svaki Pazar ini roba koja je prodata, cijena robe, porez, rabat i redni broj. Za svaki Pazar se zna i u kojem objektu je ostvaren. Za radnika se pamti ime, prezime i JMBG. Za objekat se pamti adresa, naziv i jedan telefon. Pored toga za svaki objekat se pamti ef.3. ER dijagram

Na osnovu analize dizajna baze napravljen je slijdei ER Dijagram

Sl. 1. ER dijagram za bazu prodavnice auto dijelova4. Rijenik podatakaAUTO

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

MarkaTekst duine do 50 znakovaMarka automobila.

ModelTekst duine do 50 znakovaModel automobila.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

DOBAVLJAC

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

NazivTekst duine do 50 znakovaNaziv lijeka.

IdGradCijeli brojGrad dobavljaa

UlicaTekst duine do 50 znakovaUlica u kojoj se nalazi dobavlja.

BrojTekst duine do 5 znakovaBroj u adresi dobavljaa.

TelefonTekst duine do 50 znakovaBroj telefona dobavljaa.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

GRAD

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

NazivTekst duine do 50 znakovaNaziv grada.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

JEDINICA MJERE

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

NazivTekst duine do 50 znakovaNaziv jedinice mjere.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

OBJEKAT

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

NazivTekst duine do

0 znakovaPregled na osnovu kojeg je propisan lijek.

IdGradCijeli brojGrad u kojem se nalazi objekat.

UlicaTekst duine do 50 znakovaUlica u kojoj se nalazi objekat.

BrojTekst duine do 5 znakovaBroj u adresi dobavljaa.

TelefonTekst duine do 50 znakovaBroj telefona dobavljaa.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

PAZAR

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

IdObjekatCijeli brojObjekat u kojem je napravljen pazar.

Redni brojCijeli brojRedni broj pazara.

ProknjizenoDa ili neDa li je pazar porknjien.

DatumDatumDatum kada je ostvaren pazar.

NapomenaTekst duine do 2000 znakovaNapomena.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

PAZARSTAVKE

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

IdPazarCijeli brojPazar kojem stavka pripada

IdSmjenaCijeli brojSmjena u kojoj je stavka prodata.

IdRobaCijeli brojRoba koja je prodata.

CijenaDecimalni broj sa dvije decimaleCijena jedinice robe po kojoj je prodata.

Koliina Decimalni broj sa dvije decimaleKoliina prodate robe.

RabatDecimalni broj sa dvije decimalePriznati rabat.

PorezDecimalni broj sa dvije decimalePorez na robu.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

RADNIK

Naziv podatkaTipOpis

IdCijeli brojVjetaki primarni klju.

ImeTekst duine do 30 znakovaIme radnika.

PrezimeTekst duine do 50 znakovaPrezime radnika.

JMBGTeks duine tano 13 znakovaJMBG radnika.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

ROBA

Naziv podatkaNaziv podatkaNaziv podatka

IdCijeli brojVjetaki primarni klju.

IdAutoCijeli brojAuto iji je roba rezervni dio.

IdDobavljacCijeli brojDobavlja od kojeg se nabavlja roba.

NazivTekst duine do 50 znakovaNaziv robe.

IdJedinicaMjereCijeli brojJedinica mjere.

CijenaDecimalni broj sa dvije decimaleCijena robe.

PoreskaStopaDecimalni broj sa dvije decimalePoreska stopa koja se odnosi na robu.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumDatum zadnjeg mijenjanja reda.

SMJENA

Naziv podatkaNaziv podatkaNaziv podatka

IdCijeli brojVjetaki primarni klju.

IdObjektaCijeli broj Objekat na koji se podatak odnosi.

PocetakDatum i vrijeme poetka smjeneDatum i vrijeme poetka smjene

KrajDatum i vrijeme kraja smjeneDatum i vrijeme kraja smjene

SmjenaPoReduCijeli brojGovori koja je smjena po redu u datom objektu.

ZakljuenaDa ili neDa li je smjena zakljuena.

IdKorisnikCijeli brojRadnik koji je zadnji mijenjao red.

DatumZapisaDatumZapisaDatumZapisa

5. Skriptovi za kreiranje baze podataka

USE [ProdavnicaAutoDijelova]

GO

/****** Object: Table [dbo].[Radnik] Script Date: 02/12/2012 16:05:43 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Radnik](

[Id] [int] IDENTITY(1,1) NOT NULL,

[Ime] [nvarchar](30) NOT NULL,

[Prezime] [nvarchar](50) NOT NULL,

[JMBG] [char](13) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Radnik] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Roba] Script Date: 02/12/2012 16:05:43 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Roba](

[Id] [int] IDENTITY(1,1) NOT NULL,

[IdAuto] [int] NOT NULL,

[IdDobavljac] [int] NOT NULL,

[Naziv] [nvarchar](50) NOT NULL,

[IdJedinicaMjere] [int] NOT NULL,

[Cijena] [decimal](18, 2) NOT NULL,

[PoreskaStopa] [decimal](18, 2) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Roba] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: View [dbo].[PregledBrojaRadnika] Script Date: 02/12/2012 16:05:45 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledBrojaRadnika]

AS

SELECT COUNT(Id) AS BrojRadnika

FROM Radnik

GO

/****** Object: View [dbo].[PregledRadnika] Script Date: 02/12/2012 16:05:45 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledRadnika]

AS

SELECT Ime, Prezime, '1'+LEFT((RIGHT(JMBG, 9)), 3) AS GodinaRodjenja

FROM Radnik

GO

/****** Object: Table [dbo].[Grad] Script Date: 02/12/2012 16:05:45 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Grad](

[Id] [int] IDENTITY(1,1) NOT NULL,

[Naziv] [nvarchar](50) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Grad] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: Table [dbo].[JedinicaMjere] Script Date: 02/12/2012 16:05:45 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[JedinicaMjere](

[Id] [int] IDENTITY(1,1) NOT NULL,

[Naziv] [nvarchar](50) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_JedinicaMjere] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: Trigger [BrisanjeRadnika] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

-- =============================================

-- Author:

-- Create date:

-- Description:

-- =============================================

CREATE TRIGGER [dbo].[BrisanjeRadnika]

ON [dbo].[Radnik]

AFTER DELETE

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

-- Insert statements for trigger here

ROLLBACK

RAISERROR('Korisnici se ne briu',16,1)

END

GO

/****** Object: Table [dbo].[Auto] Script Date: 02/12/2012 16:05:45 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Auto](

[Id] [int] IDENTITY(1,1) NOT NULL,

[Marka] [nvarchar](50) NOT NULL,

[Model] [nvarchar](50) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Auto] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: Table [dbo].[Dobavljac] Script Date: 02/12/2012 16:05:45 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Dobavljac](

[Id] [int] IDENTITY(1,1) NOT NULL,

[Naziv] [nvarchar](50) NOT NULL,

[IdGrad] [int] NOT NULL,

[Ulica] [nvarchar](50) NOT NULL,

[Broj] [nvarchar](5) NOT NULL,

[Telefon] [nvarchar](50) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Dobavljac] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: StoredProcedure [dbo].[ObrisiAuto] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

-- =============================================

-- Author:

-- Create date:

-- Description:

-- =============================================

CREATE PROCEDURE [dbo].[ObrisiAuto]

-- Add the parameters for the stored procedure here

@Id int

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

-- Insert statements for procedure here

DELETE FROM Auto

WHERE Id = @Id

END

GO

/****** Object: Table [dbo].[Objekat] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Objekat](

[Id] [int] IDENTITY(1,1) NOT NULL,

[Naziv] [nvarchar](50) NOT NULL,

[IdGrad] [int] NOT NULL,

[Ulica] [nvarchar](50) NOT NULL,

[Broj] [nvarchar](5) NOT NULL,

[IdSef] [int] NOT NULL,

[Telefon] [nvarchar](50) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Objekat] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: View [dbo].[PregledDobavljaca] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledDobavljaca]

AS

SELECT D.Naziv, G.Naziv AS Grad, D.Ulica, D.Broj, D.Telefon

FROM Dobavljac AS D

INNER JOIN Grad AS G ON G.Id = D.IdGrad

GO

/****** Object: Table [dbo].[Smjena] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Smjena](

[Id] [int] IDENTITY(1,1) NOT NULL,

[IdObjekta] [int] NOT NULL,

[Pocetak] [datetime] NOT NULL,

[Kraj] [datetime] NULL,

[SmjenaPoRedu] [tinyint] NOT NULL,

[Zakljucena] [bit] NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Smjena] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: View [dbo].[PregledStanjaSkladistaPoMarki] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledStanjaSkladistaPoMarki]

AS

SELECT A.Marka, SUM(R.Cijena) AS Vrijednost

FROM Roba AS R

INNER JOIN Auto AS A ON A.Id = R.IdAuto

INNER JOIN Dobavljac AS D ON D.Id = R.IdDobavljac

GROUP BY A.Marka

GO

/****** Object: View [dbo].[PregledRobeBezPoreza] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledRobeBezPoreza]

AS

SELECT A.Marka, A.Model, D.Naziv AS Dobavljac, R.Naziv AS Roba, JM.Naziv JedinicaMjere, R.Cijena, R.PoreskaStopa

FROM Roba AS R

INNER JOIN Auto AS A ON A.Id = R.IdAuto

INNER JOIN Dobavljac AS D ON D.Id = R.IdDobavljac

INNER JOIN JedinicaMjere AS JM ON JM.Id = R.IdJedinicaMjere

WHERE ISNULL(R.PoreskaStopa, 0) = 0

GO

/****** Object: View [dbo].[PregledRobe] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledRobe]

AS

SELECT A.Marka, A.Model, D.Naziv AS Dobavljac, R.Naziv AS Roba, JM.Naziv JedinicaMjere, R.Cijena, R.PoreskaStopa

FROM Roba AS R

INNER JOIN Auto AS A ON A.Id = R.IdAuto

INNER JOIN Dobavljac AS D ON D.Id = R.IdDobavljac

INNER JOIN JedinicaMjere AS JM ON JM.Id = R.IdJedinicaMjere

GO

/****** Object: Table [dbo].[Pazar] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Pazar](

[Id] [int] IDENTITY(1,1) NOT NULL,

[IdObjekat] [int] NOT NULL,

[RedniBroj] [int] NOT NULL,

[Proknjizeno] [bit] NOT NULL,

[Datum] [datetime] NOT NULL,

[Napomena] [nvarchar](max) NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_Pazar] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: StoredProcedure [dbo].[IzmjeniPazar] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

-- =============================================

-- Author:

-- Create date:

-- Description:

-- =============================================

CREATE PROCEDURE [dbo].[IzmjeniPazar]

-- Add the parameters for the stored procedure here

@Id int

,@IdObjekat int

,@RedniBroj int

,@Proknjizeno bit

,@Datum datetime

,@Napomena nvarchar(max)

,@IdKorisnik int

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

-- Insert statements for procedure here

UPDATE [ProdavnicaAutoDijelova].[dbo].[Pazar]

SET IdObjekat = @IdObjekat

,RedniBroj = @RedniBroj

,Proknjizeno = @Proknjizeno

,Datum = @Datum

,Napomena = @Napomena

,IdKorisnik = @IdKorisnik

,DatumZapisa = GETDATE()

WHERE Id = @Id

END

GO

/****** Object: StoredProcedure [dbo].[DodajPazar] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

-- =============================================

-- Author:

-- Create date:

-- Description:

-- =============================================

CREATE PROCEDURE [dbo].[DodajPazar]

-- Add the parameters for the stored procedure here

@IdObjekat int

,@RedniBroj int

,@Proknjizeno bit

,@Datum datetime

,@Napomena nvarchar(max)

,@IdKorisnik int

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

-- Insert statements for procedure here

INSERT INTO [ProdavnicaAutoDijelova].[dbo].[Pazar]

([IdObjekat]

,[RedniBroj]

,[Proknjizeno]

,[Datum]

,[Napomena]

,[IdKorisnik]

,[DatumZapisa])

VALUES

(@IdObjekat

,@RedniBroj

,@Proknjizeno

,@Datum

,@Napomena

,@IdKorisnik

,GETDATE())

END

GO

/****** Object: Trigger [RedniBroj] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

-- =============================================

-- Author:

-- Create date:

-- Description:

-- =============================================

CREATE TRIGGER [dbo].[RedniBroj]

ON [dbo].[Pazar]

AFTER INSERT

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

-- Insert statements for trigger here

UPDATE Pazar

SET RedniBroj = (SELECT MAX(P.RedniBroj) + 1

FROM Pazar AS P

INNER JOIN INSERTED AS I ON I.IdObjekat = P.IdObjekat)

FROM Pazar

END

GO

/****** Object: Table [dbo].[PazarStavke] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[PazarStavke](

[Id] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,

[IdPazar] [int] NOT NULL,

[IdSmjena] [int] NOT NULL,

[IdRoba] [int] NOT NULL,

[Cijena] [decimal](18, 2) NOT NULL,

[Kolicina] [decimal](18, 2) NOT NULL,

[Rabat] [decimal](18, 2) NOT NULL,

[Prorez] [decimal](18, 2) NOT NULL,

[IdKorisnik] [int] NOT NULL,

[DatumZapisa] [date] NOT NULL,

CONSTRAINT [PK_PazarStavke] PRIMARY KEY CLUSTERED

(

[Id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

/****** Object: View [dbo].[PregledPazaraPoObjektima] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledPazaraPoObjektima]

AS

SELECT O.Id, O.Naziv, P.RedniBroj, SUM(PS.Cijena) AS Pazar, COUNT(PS.Id) AS BrojAritkala

FROM Pazar AS P

INNER JOIN PazarStavke AS PS ON PS.IdPazar = P.Id

INNER JOIN Objekat AS O ON O.Id = P.IdObjekat

GROUP BY O.Id, O.Naziv, P.RedniBroj

GO

/****** Object: View [dbo].[PregledNajvecihPazara] Script Date: 02/12/2012 16:05:46 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE VIEW [dbo].[PregledNajvecihPazara]

AS

SELECT O.Id, O.Naziv, P.RedniBroj, SUM(PS.Cijena) AS Pazar

FROM Pazar AS P

INNER JOIN PazarStavke AS PS ON PS.IdPazar = P.Id

INNER JOIN Objekat AS O ON O.Id = P.IdObjekat

GROUP BY O.Id, O.Naziv, P.RedniBroj

HAVING SUM(PS.Cijena) > 10000

GO

/****** Object: Default [DF_Dobavljac_Broj] Script Date: 02/12/2012 16:05:45 ******/

ALTER TABLE [dbo].[Dobavljac] ADD CONSTRAINT [DF_Dobavljac_Broj] DEFAULT ((0)) FOR [Broj]

GO

/****** Object: Default [DF_Table_1_ZaSlanje] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Objekat] ADD CONSTRAINT [DF_Table_1_ZaSlanje] DEFAULT ((0)) FOR [Broj]

GO

/****** Object: Default [DF_Pazar_Proknjizeno] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Pazar] ADD CONSTRAINT [DF_Pazar_Proknjizeno] DEFAULT ((0)) FOR [Proknjizeno]

GO

/****** Object: Default [DF_Smjena_Zakljucena] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Smjena] ADD CONSTRAINT [DF_Smjena_Zakljucena] DEFAULT ((0)) FOR [Zakljucena]

GO

/****** Object: ForeignKey [FK_Radnik_Radnik1] Script Date: 02/12/2012 16:05:43 ******/

ALTER TABLE [dbo].[Radnik] WITH CHECK ADD CONSTRAINT [FK_Radnik_Radnik1] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Radnik] CHECK CONSTRAINT [FK_Radnik_Radnik1]

GO

/****** Object: ForeignKey [FK_Grad_Radnik] Script Date: 02/12/2012 16:05:45 ******/

ALTER TABLE [dbo].[Grad] WITH CHECK ADD CONSTRAINT [FK_Grad_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Grad] CHECK CONSTRAINT [FK_Grad_Radnik]

GO

/****** Object: ForeignKey [FK_JedinicaMjere_JedinicaMjere] Script Date: 02/12/2012 16:05:45 ******/

ALTER TABLE [dbo].[JedinicaMjere] WITH CHECK ADD CONSTRAINT [FK_JedinicaMjere_JedinicaMjere] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[JedinicaMjere] CHECK CONSTRAINT [FK_JedinicaMjere_JedinicaMjere]

GO

/****** Object: ForeignKey [FK_Auto_Radnik] Script Date: 02/12/2012 16:05:45 ******/

ALTER TABLE [dbo].[Auto] WITH CHECK ADD CONSTRAINT [FK_Auto_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Auto] CHECK CONSTRAINT [FK_Auto_Radnik]

GO

/****** Object: ForeignKey [FK_Dobavljac_Grad] Script Date: 02/12/2012 16:05:45 ******/

ALTER TABLE [dbo].[Dobavljac] WITH CHECK ADD CONSTRAINT [FK_Dobavljac_Grad] FOREIGN KEY([IdGrad])

REFERENCES [dbo].[Grad] ([Id])

GO

ALTER TABLE [dbo].[Dobavljac] CHECK CONSTRAINT [FK_Dobavljac_Grad]

GO

/****** Object: ForeignKey [FK_Dobavljac_Radnik] Script Date: 02/12/2012 16:05:45 ******/

ALTER TABLE [dbo].[Dobavljac] WITH CHECK ADD CONSTRAINT [FK_Dobavljac_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Dobavljac] CHECK CONSTRAINT [FK_Dobavljac_Radnik]

GO

/****** Object: ForeignKey [FK_Objekat_Grad] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Objekat] WITH CHECK ADD CONSTRAINT [FK_Objekat_Grad] FOREIGN KEY([IdGrad])

REFERENCES [dbo].[Grad] ([Id])

GO

ALTER TABLE [dbo].[Objekat] CHECK CONSTRAINT [FK_Objekat_Grad]

GO

/****** Object: ForeignKey [FK_Objekat_Objekat] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Objekat] WITH CHECK ADD CONSTRAINT [FK_Objekat_Objekat] FOREIGN KEY([Id])

REFERENCES [dbo].[Objekat] ([Id])

GO

ALTER TABLE [dbo].[Objekat] CHECK CONSTRAINT [FK_Objekat_Objekat]

GO

/****** Object: ForeignKey [FK_Objekat_Radnik] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Objekat] WITH CHECK ADD CONSTRAINT [FK_Objekat_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Objekat] CHECK CONSTRAINT [FK_Objekat_Radnik]

GO

/****** Object: ForeignKey [FK_Objekat_Radnik1] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Objekat] WITH CHECK ADD CONSTRAINT [FK_Objekat_Radnik1] FOREIGN KEY([IdSef])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Objekat] CHECK CONSTRAINT [FK_Objekat_Radnik1]

GO

/****** Object: ForeignKey [FK_Pazar_Objekat] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Pazar] WITH CHECK ADD CONSTRAINT [FK_Pazar_Objekat] FOREIGN KEY([IdObjekat])

REFERENCES [dbo].[Objekat] ([Id])

GO

ALTER TABLE [dbo].[Pazar] CHECK CONSTRAINT [FK_Pazar_Objekat]

GO

/****** Object: ForeignKey [FK_Pazar_Radnik] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Pazar] WITH CHECK ADD CONSTRAINT [FK_Pazar_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Pazar] CHECK CONSTRAINT [FK_Pazar_Radnik]

GO

/****** Object: ForeignKey [FK_Smjena_Objekat] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Smjena] WITH CHECK ADD CONSTRAINT [FK_Smjena_Objekat] FOREIGN KEY([IdObjekta])

REFERENCES [dbo].[Objekat] ([Id])

GO

ALTER TABLE [dbo].[Smjena] CHECK CONSTRAINT [FK_Smjena_Objekat]

GO

/****** Object: ForeignKey [FK_Smjena_Radnik] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[Smjena] WITH CHECK ADD CONSTRAINT [FK_Smjena_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[Smjena] CHECK CONSTRAINT [FK_Smjena_Radnik]

GO

/****** Object: ForeignKey [FK_PazarStavke_Pazar] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[PazarStavke] WITH CHECK ADD CONSTRAINT [FK_PazarStavke_Pazar] FOREIGN KEY([IdPazar])

REFERENCES [dbo].[Pazar] ([Id])

GO

ALTER TABLE [dbo].[PazarStavke] CHECK CONSTRAINT [FK_PazarStavke_Pazar]

GO

/****** Object: ForeignKey [FK_PazarStavke_Radnik] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[PazarStavke] WITH CHECK ADD CONSTRAINT [FK_PazarStavke_Radnik] FOREIGN KEY([IdKorisnik])

REFERENCES [dbo].[Radnik] ([Id])

GO

ALTER TABLE [dbo].[PazarStavke] CHECK CONSTRAINT [FK_PazarStavke_Radnik]

GO

/****** Object: ForeignKey [FK_PazarStavke_Roba] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[PazarStavke] WITH CHECK ADD CONSTRAINT [FK_PazarStavke_Roba] FOREIGN KEY([IdRoba])

REFERENCES [dbo].[Roba] ([Id])

GO

ALTER TABLE [dbo].[PazarStavke] CHECK CONSTRAINT [FK_PazarStavke_Roba]

GO

/****** Object: ForeignKey [FK_PazarStavke_Smjena] Script Date: 02/12/2012 16:05:46 ******/

ALTER TABLE [dbo].[PazarStavke] WITH CHECK ADD CONSTRAINT [FK_PazarStavke_Smjena] FOREIGN KEY([IdSmjena])

REFERENCES [dbo].[Smjena] ([Id])

GO

ALTER TABLE [dbo].[PazarStavke] CHECK CONSTRAINT [FK_PazarStavke_Smjena]

GO

6. Sadraj

21.Opis problema

22.Analiza i dizajn rjeenja

33.ER dijagram

34.Rijenik podataka

75.Skriptovi za kreiranje baze podataka

186.Sadraj