SQL The database you will use for this assignment contains information related t
ID: 3722041 • Letter: S
Question
SQL
The database you will use for this assignment contains information related to Major League Baseball (MLB) about players, teams, and games. The relations are:
Players(playerID, playerName, team, position, birthYear)
playerID is a player identifier used in MLB, and all players throughout the history of baseball have a unique ID
playerName is player’s name
team is the name of the MLB team the player is currently playing on (or the last team the player played for if they are not currently playing)
position is the position of the player
birthYear is the year that player was born
Teams(teamID, teamName, home, leagueName)
teamID is a unique ID internal to MLB.
teamName is the name of the team
home is the home city of the team
leagueName is the league the team is in, i.e. either “National” or “American”, which stands for “National League” and “American League”, respectively
Games(gameID, homeTeamID, guestTeamID, date)
gameID is a unique ID used internally in MLB
homeTeamID is the ID of the hometeam
guestTeamID is the ID of the visiting team
date is the date of the game.
A sample instance of this database is given at the end of this homework handout. Since it is just one instance of the database designed to give you some intuition, you should not “customize” your answer to work only with this instance.
1. Write appropriate SQL DDL statements (CREATE statements) for declaring the above described relational database schema. Specify the keys and referential triggered actions.
Players
playerID
playerName
team
position
birthYear
1
Javy Lopez
Braves
Catcher
1970
2
Cliff Lee
Phillies
Pitcher
1978
3
Derek Jeter
Yankees
Infielder
1974
4
Skip Schumaker
Cardinals
Infielder
1980
5
Dominic Brown
Phillies
Outfielder
1987
Teams
teamID
teamName
home
leagueName
1
Phillies
Philadelphia
National
2
Braves
Atlanta
National
3
Yankees
New York
American
4
Twins
Minnesota
American
5
Rangers
Texas
American
6
Cubs
Chicago
National
Games
gameID
homeTeamID
guestTeamID
date
1
3
6
04/21/2010
2
1
4
04/21/2010
3
2
5
04/30/2010
4
6
3
05/02/2010
5
4
5
05/02/2010
6
1
5
05/06/2010
playerID
playerName
team
position
birthYear
1
Javy Lopez
Braves
Catcher
1970
2
Cliff Lee
Phillies
Pitcher
1978
3
Derek Jeter
Yankees
Infielder
1974
4
Skip Schumaker
Cardinals
Infielder
1980
5
Dominic Brown
Phillies
Outfielder
1987
Explanation / Answer
CREATE TABLE Players
(
FOREIGN KEY (playerID) REFERENCES MLB(playerID),
playerName VARCHAR NOT NULL,
team VARCHAR NOT NULL,
position VARCHAR NOT NULL,
birthYear INT NOT NULL
)
CREATE TABLE Teams
(
FOREIGN KEY (teamID) REFERENCES MLB(teamID),
teamName VARCHAR NOT NULL,
home VARCHAR NOT NULL,
leagueName VARCHAR NOT NULL
)
CREATE TABLE Games
(
FOREIGN KEY (gameID) REFERENCES MLB(gameID),
homeTeamID INT NOT NULL,
guestTeamID INT NOT NULL,
date DATE
)
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.