Dobio sam za pripremu ispita neki zadat da ga uradim u Query Analyzer-u ali mi nešto ne ide.Zapoceo sam nešto ali mi neke stvari nisu jasne kao na primer kako da definisem 1-za muski pol a 0-za zenski i kako da definisem strani kljuc.Zadatak glasi ovako:
Kreirati bazu Priprema primenom odgovarajuce SQL naredbe.U
bazi kreirati dve tabele:Radnik i Zarade.
Tabela Radnik ima sledeće atribute Prezime,Ime,Maticni broj,Pol(tip bit),
Grad,UlicaiBroj,Telefon,mobilni
Tabela Zarade ima atributeatumIsplate,IznosZarade.
U obe tabele potrebno je dodati atribut koji ih jedinstveno identifikuje.
Pored toga u tabeli Zarade potrebno je definisati odgovarajuci strani kljuc
koji ukazuje na kog se radnika odnosi zarada.
Bitsko polje Pol definise se na sledeći način: 1-musko,0-zensko
Primenom INSERT naredbe ubaciti 5 zapisa u obe tabele.
Prikazati sve zapise iz tabele Radnik koje se odnose na osobe muskog pola
Primenom INNER JOIN naredbe prikazati Ime i Prezime radnika,Datum Isplate i
Iznos Zarade.Iznos zarade sortirati u opadajucem poretki.
U tabeli radnik potrebno je ubaciti još 2 osobe muskog pola(Marko,Laza) i 1
osobu zenskog pola(Milena).Ostale podatke proizvoljno definisati
U tabeli zarade ubaciti njihove zarade prema tabeli
--Marko 56,767.34
--Laza 45,456.32
--Milenba 35,456.23
Datum uplata ovih zarada je 15.decembar 2004.
Povecaj zaradu radniku Laza za 25%
Da li neko mogao da mi da kod za ovaj zadatak ili bar da mi barem malo ispravi ovo sto sam ja napisao...Hvala...
Create Database Priprema
Create Table Radnik
(
ID int identity(1,1)Not Null primary Key,
Ime varchar(40)Not Null,
Prezime varchar(40)Not Null,
JMBG char(13)Not Null Unique,
Pol bit Null,
Grad varchar(40)Null Default'Beograd',
UlicaIBroj varchar(50) Not Null,
Telefon varchar(15)Null,
Mobilni varchar(15)Null
)
Create Table Zarade
(
ID_1 int identity(1,1) Not null primary Key,
Datumisplate smalldatetime Not Null,
IznosZarade varchar(50) Not null,
)
Alter Table Zarade
ADD Constraint Fk_ID_1 Foreign Key(ID_1)
REFERENCES Radnik(ID)
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Bojan','Milenkovic','1909984710153','1','Beograd','Dr.Ivana Ribara 126','011-1762996','064-2047845')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','500')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Petar','Peric','1206984710153','1','Beograd','Nemanjina','011-2222222','064-2222222')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','200')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Milan','Milanovic','1806984710153','1','Beograd','Sarajevska 15','011-1111111','064-333333333')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('11.15.2004','1200')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Ivana','Ivanovic','1306984710153','0','Beograd','Balkanska 15','011-44444444','064-44444444')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('09.12.2004','2200')
Select *
From Radnik
Where pol=1
Select radnik.ime,radnik.prezime,zarade.datumisplate,zarade.iznoszarade
From Radnik
Inner Join zarade
On radnik.ID=zarade.ID_1
Order By iznoszarade DESC
go
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Marko','Markovic','0511984710153','1','Beograd','Kneza milosa 58','011-5555555','064-5555555')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','350')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Laza','Lazic','1104984710153','1','Beograd','Nemanjina','011-2337892','064-5856781')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','45,456.32')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Milena','Milic','1102981710153','0','Beograd','Sarajevska 59','011-8888888','064-8888888')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','35,456.23')
update zarade
Set iznoszarade='56,820.4'--Zarada uvecana za 25% prethodna zarada je bila 45,456.32
where ID_1=6
select *
from radnik
select *
from zarade
Kreirati bazu Priprema primenom odgovarajuce SQL naredbe.U
bazi kreirati dve tabele:Radnik i Zarade.
Tabela Radnik ima sledeće atribute Prezime,Ime,Maticni broj,Pol(tip bit),
Grad,UlicaiBroj,Telefon,mobilni
Tabela Zarade ima atributeatumIsplate,IznosZarade.
U obe tabele potrebno je dodati atribut koji ih jedinstveno identifikuje.
Pored toga u tabeli Zarade potrebno je definisati odgovarajuci strani kljuc
koji ukazuje na kog se radnika odnosi zarada.
Bitsko polje Pol definise se na sledeći način: 1-musko,0-zensko
Primenom INSERT naredbe ubaciti 5 zapisa u obe tabele.
Prikazati sve zapise iz tabele Radnik koje se odnose na osobe muskog pola
Primenom INNER JOIN naredbe prikazati Ime i Prezime radnika,Datum Isplate i
Iznos Zarade.Iznos zarade sortirati u opadajucem poretki.
U tabeli radnik potrebno je ubaciti još 2 osobe muskog pola(Marko,Laza) i 1
osobu zenskog pola(Milena).Ostale podatke proizvoljno definisati
U tabeli zarade ubaciti njihove zarade prema tabeli
--Marko 56,767.34
--Laza 45,456.32
--Milenba 35,456.23
Datum uplata ovih zarada je 15.decembar 2004.
Povecaj zaradu radniku Laza za 25%
Da li neko mogao da mi da kod za ovaj zadatak ili bar da mi barem malo ispravi ovo sto sam ja napisao...Hvala...
Create Database Priprema
Create Table Radnik
(
ID int identity(1,1)Not Null primary Key,
Ime varchar(40)Not Null,
Prezime varchar(40)Not Null,
JMBG char(13)Not Null Unique,
Pol bit Null,
Grad varchar(40)Null Default'Beograd',
UlicaIBroj varchar(50) Not Null,
Telefon varchar(15)Null,
Mobilni varchar(15)Null
)
Create Table Zarade
(
ID_1 int identity(1,1) Not null primary Key,
Datumisplate smalldatetime Not Null,
IznosZarade varchar(50) Not null,
)
Alter Table Zarade
ADD Constraint Fk_ID_1 Foreign Key(ID_1)
REFERENCES Radnik(ID)
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Bojan','Milenkovic','1909984710153','1','Beograd','Dr.Ivana Ribara 126','011-1762996','064-2047845')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','500')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Petar','Peric','1206984710153','1','Beograd','Nemanjina','011-2222222','064-2222222')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','200')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Milan','Milanovic','1806984710153','1','Beograd','Sarajevska 15','011-1111111','064-333333333')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('11.15.2004','1200')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Ivana','Ivanovic','1306984710153','0','Beograd','Balkanska 15','011-44444444','064-44444444')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('09.12.2004','2200')
Select *
From Radnik
Where pol=1
Select radnik.ime,radnik.prezime,zarade.datumisplate,zarade.iznoszarade
From Radnik
Inner Join zarade
On radnik.ID=zarade.ID_1
Order By iznoszarade DESC
go
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Marko','Markovic','0511984710153','1','Beograd','Kneza milosa 58','011-5555555','064-5555555')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','350')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Laza','Lazic','1104984710153','1','Beograd','Nemanjina','011-2337892','064-5856781')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','45,456.32')
Insert Into Radnik (Ime,Prezime,JMBG,Pol,Grad,UlicaIBroj,Telefon,Mobilni)
Values ('Milena','Milic','1102981710153','0','Beograd','Sarajevska 59','011-8888888','064-8888888')
Insert Into Zarade (datumisplate,Iznoszarade)
Values('12.15.2004','35,456.23')
update zarade
Set iznoszarade='56,820.4'--Zarada uvecana za 25% prethodna zarada je bila 45,456.32
where ID_1=6
select *
from radnik
select *
from zarade