create table footballclub(
Club_code varchar(25) not null primary key,
Club_name varchar(25),
Country varchar(25),
League_code varchar(25),
Manager_id int(5),
Club_rank varchar(3) unique,
Stadium varchar(25),
Current_squad varchar(25),
Sponsor varchar(25)
);
alter table footballclub add foreign key(Current_squad) references Squads(Squad_id);
alter table footballclub add foreign key(Sponsor) references Sponsor(Sponsor_code);
alter table footballclub add foreign key(Manager_id) references Manager(Manager_id);
alter table footballclub add foreign key(League_code) references League(League_code);
set foreign_key_checks=0;
create table Player(
Player_id int (5)not null primary key,
Player_name varchar(25) not null,
Country varchar(25),
Age int(2),
Height int(3),
Current_club varchar(25),
Player_type varchar(25),
Squad_id varchar(25),
Salary int(8)
);
create table LeagueMatch(
Match_code int(5) not null primary key,
League varchar(25),
Home_team varchar(25),
Away_team varchar(25),
Match_date date,
Start_time varchar(20),
Duration int(3),
Stadium varchar(25),
Referee_id int(5),
RedCard_count int(2),
YellowCard_count int(2),
HomeTeam_score int(2),
AwayTeam_score int(2)
);
alter table LeagueMatch add foreign key(Home_team) references footballclub(Club_code);
alter table LeagueMatch add foreign key(Away_team) references footballclub(Club_code);
alter table LeagueMatch add foreign key(Referee_id) references Referee(Ref_id);
alter table LeagueMatch add foreign key(League) references League(League_code);
create table League(
League_code varchar(25) not null primary key,
League_name varchar(25),
Country varchar(25),
No_of_teams int(3)
);
create table Achievements(
Ach_name varchar(25) not null primary key,
League_season varchar(10),
Winning_club varchar(25),
WinningClub_code varchar(25),
Windate date,foreign key(WinningClub_code) references footballclub(Club_code)
);
create table Manager(
Manager_id int(5) not null primary key,
Manager_name varchar(25) not null,
Country varchar(25),
Experience int(2),
Club varchar(25),
Salary int(8),foreign key(Club) references footballclub(Club_code)
);
create table Statistics (
Club_code varchar(25),
Club varchar(20),
Wins int(3),
Losses int(3),
No_of_Titles int(3),foreign key(Club_code) references footballclub(Club_code)
);
create table Referee(
Ref_id int(5) primary key,
Ref_Name varchar(25) not null,
Country varchar(25),
No_of_matches int(3),
salary int(8)
);
create table Squads(
Squad_id varchar(25) not null primary key,
Team_Formation varchar(10)
);
create table SquadPlayers(
Squad_id varchar(25) not null primary key ,
Player_id int(5) ,
Position varchar(20),
Status varchar(20),foreign key(Squad_id) references Squads(Squad_id), foreign key(Player_id)
references Player(Player_id));
alter table SquadPlayers drop primary key, add primary key(Squad_id,Player_id,Status,Position);
create table Sponsor(
Sponsor_code varchar(25) primary key,
Sponsor_name varchar(25),
Amount int(8)
);
delimiter $$
create trigger MatchStats before INSERT on LeagueMatch
for each row
begin
if(new.HomeTeam_score > new.AwayTeam_score)
then update Statistics set Wins=Wins+1 where Club_code=new.Home_Team;
update Statistics set Losses=Losses+1 where Club_code=new.Away_team ;
else update Statistics set Wins=Wins+1 where Club_code=new.Away_Team ;
update Statistics set Losses=Losses+1 where Club_code=new.Home_team;
end if ;
end $$
delimiter ;
delimiter $$
create trigger AchievemStats before INSERT on Achievements
for each row
begin
update Statistics set No_of_Titles=No_of_Titles+1 where Club_code=new.WinningClub_code ;
end $$
delimiter ;
alter table Player add foreign key(Current_club) references footballclub(Club_code);
alter table Player add foreign key(Squad_id) references SquadPlayers(Squad_id);
alter table Player drop foreign key (Former_club);
alter table Player drop column Former_club;
insert into footballclub values('JUV',"Juventus","Italy",'ITA',201,'#6',"Juventus
Stadium","JFC099","Jeep");
insert into footballclub values('MUFC',"Manchester United","England",'ENG',103,'#16',"Old
TRafford","MU110","Chevrolet");
insert into footballclub values('ATM',"Atletico Madrid","Spain",'ESP',009,'#5',"Vicente
Calderon","ATM007","Azerbaijan");
insert into footballclub values('ARGN',"Arsenal","England",'ENG',107,'#8',"Emirates
Stadium","GUN135","Emirates");
insert into footballclub values('MCFC',"Manchester City","England",'ENG',101,'#13',"Etihad
Stadium","ADMC101","Azerbaijan");
insert into footballclub values('PSG',"Paris Saint-Germain","France",'FRA',518,'#9',"Parc Des
Princes","PSG122","Emirates");
insert into footballclub values('RM',"Real Madrid","Spain",'ESP',007,'#1',"Santiago
Bernabeu","LosBlancos","Emirates");
insert into footballclub values('FBM',"Bayern Munich","Germany",'GER',807,'#4',"Allianz
Arena","GBM067","t-mobile");
insert into footballclub values('FCB',"FC Barcelona","Spain",'ESP',008,'#2',"Camp
Nou","Catalans11","Qatar Airways");
insert into footballclub values('ICM',"Inter Milan","Italy",'ITA',208,'#12',"San Siro","ICM153","Pirelli");
insert into footballclub values('ACM',"AC Milan","Italy",'ITA',204,'#29',"San Siro","ACM122","Emirates");
insert into Player values(19,"Luca Modric","Crotioa",5,31,"RM","Mid","LosBlancos",6000000);
insert into Player values(07,"Cristiano
Ronaldo","Portugal",6,32,"RM","Legendary","LosBlancos",32000000);
insert into Player values(02,"Zlatan
Ibrahimovic","Sweden",7,34,"PSG","Legendary","PSG122",35000000);
insert into Player values(09,"Kareem Benzema","France",6,29,"RM","Forward","LosBlancos",7000000);
insert into Player values(01,"Iker Castillas","Spain",6,35,"RM","Epic","LosBlancos",7000000);
insert into Player values(04,"Sergio Ramos","Spain",6,31,"RM","Defender","LosBlancos",10000000);
insert into Player values(10,"Leo Messi","Argentina",4,29,"FCB","Legendary","Catalans11",40000000);
insert into Player values(05,"Andres Iniesta","Spain",4,33,"FCB","Mid","Catalans11",5000000);
insert into Player values(11,"Neymar","Brazil",5,25,"FCB","Forward","Catalans11",9000000);
insert into Player values(16,"Luis Suarez","Uruguay",5,30,"FCB","Forward","Catalans11",40000000);
insert into Player values(35,"Franck Ribery","France",5,34,"FBM","Mid","GBM067",6000000);
insert into Player values(13,"Victor Valdes","Spain",5,35,"FCB","GK","Catalans11",6000000);
insert into Player values(14,"Vincent
Kompany","Belgium",6,31,"MCFC","Defender","ADMC101",1000000);
insert into Player values(21,"David Silva","Spain",5,31,"MCFC","Defender","ADMC101",600000);
insert into Player values(06,"Yasser Al-
Qahtani","SaudiArabia",5,34,"PSG","Forward","PSG122",10000000);
insert into Player values(31,"Argen Robben","Netherlands",5,34,"FBM","Forward","GBM067",4000000);
insert into Player values(08,"Thomas Muller","Germany",6,27,"FBM","Forward","GBM067",45000000);
insert into Player values(25,"Sergio
Aguero","Argentina",6,28,"MCFC","Forward","ADMC101",11000000);
insert into Player values(24,"Z","Belgium",6,31,"MCFC","Defender","ADMC101",1000000);
insert into Player values(03,"Ali Mabkhout","UAE",5,28,"PSG","Forward","PSG122",10000000);
insert into League values("GER","Bundesligue","Germany",1);
insert into League values("ESP","La Liga","Spain",2);
insert into League values("FRA","French Ligue","France",1);
insert into League values("ENG","English Premier League","England",1);
insert into Manager values(007,"Zenedine Zidane","France",2,"RM",4000000);
insert into Manager values(807,"Carli Ancelotti","Italy",3,"FBM",6000000);
insert into Manager values(518,"Laurent Blanc","France",5,"PSG",5000000);
insert into Manager values(101,"Pep Guardiola","Spain",10,"MCFC",8000000);
insert into Manager values(008,"Luis Enrique","Spain",4,"FCB",4000000);
insert into Referee values(21,"Mostafa Rashid","Kuwait",224,1000000);
insert into Referee values(22,"Mohannad Raheem","Egypt",325,1000000);
insert into Referee values(20,"Khaled Ali","Qatar",125,1000000);
insert into LeagueMatch values(1030,"ESP","RM","PSG",'2017-01-01',2200,100,"Santiago
Bernabeu",22,0,2,2,8);
insert into LeagueMatch values(1022,"ESP","RM","FCB",'2016-03-02',2200,90,"Santiago
Bernabeu",21,2,10,4,4);
insert into LeagueMatch values(1024,"ESP","FCB","RM",'2015-02-02',0000,93,"Camp Nou",20,2,8,2,5);
insert into LeagueMatch values(1003,"ESP","FCB","RM",'2016-01-02',2300,110,"Camp Nou",20,2,8,3,6);
insert into Statistics values("FBM","Bayern Munich",8,3,0);
insert into Statistics values("PSG","Paris Saint-Germain",4,5,0);
insert into Statistics values("RM","Real Madrid",5,0,10);
insert into Statistics values("MCFC","Man City",6,1,0);
insert into Statistics values("FCB","Barca",2,1,3);
insert into Squads values("LosBlancos","4-3-3");
insert into Squads values("ADMC101","4-4-2");
insert into Squads values("PSG122","3-4-3");
insert into Squads values("GBM067","4-2-4");
insert into Squads values("Catalans11","4-3-3");
insert into Sponsor value("Azerbaijan", "Republic Of Azerbaijan", 100000);
insert into Sponsor value("t-mobile", "t-mobile corp", 25000);
insert into Sponsor value("Emirates", "Fly Emirates", 100000);
insert into Sponsor value("Qatar Airways", "Fly Quatar Airways", 50000);
insert into SquadPlayers values("LosBlancos",9,"Center Forward","Active");
insert into SquadPlayers values("MCFC",21,"Center Forward","Active");
insert into SquadPlayers values("MCFC",25,"Right Forward","Subs");
insert into SquadPlayers values("Catalans11",5,"Center","Active");
insert into SquadPlayers values("PSG122",6,"Right Forward","Active");
insert into SquadPlayers values("Catalans11",10,"Center Forward","Active");
insert into SquadPlayers values("Catalans11",11,"Left Forward","Active");
insert into SquadPlayers values("LosBlancos",19,"Center Mid","Active");
insert into SquadPlayers values("Catalans11",13,"GoalKeeper","Active");
insert into SquadPlayers values("FBM",8,"Center Forward","Active");
insert into SquadPlayers values("FBM",31,"Mid Forward","Active");
insert into SquadPlayers values("FBM",35,"Right Back","Subs");
insert into SquadPlayers values("LosBlancos",1,"GoalKeeper","Active");
insert into SquadPlayers values("LosBlancos",7,"Left Forward","Active");
insert into SquadPlayers values("LosBlancos",4,"Center Back","Active");
insert into SquadPlayers values("Catalans11",16,"Right Foward","Subs");
insert into SquadPlayers values("MCFC",14,"Center Back","Active");
insert into SquadPlayers values("PSG122",3,"Left Forward","Active");
insert into SquadPlayers values("PSG122",2,"Center Forward","Active");
insert into Achievements value("Top German Club 2017","2016-17","Bayern Munich","FBM",'2017-12-
17');
insert into Achievements value("Best English 2017","2016-17","Manchester City","MCFC",'2017-12-17');
insert into Achievements value("Best Spanish 2017","2016-17","Real Madrid","RM",'2017-12-17');
insert into Achievements value("Nooba Club 2017","2016-17","Barcelona","FCB",'2017-11-05');