Track ( track_id, name, album_id* (Album), media_type_id* (MediaType), genre_id* (Genre), composer, milliseconds, bytes ) Album ( album_id, title, artist_id* (Artist) ) Artist ( artist_id, name ) Genre ( genre_id, name ) !MediaType ( media_type_id, name ) Price ( price_id, value, date, track_id* (Track) ) !InvoiceLine ( invoice_line_id, invoice_id* (Invoice), track_id* (Track), quantity ) Invoice ( invoice_id, customer_id* (Customer), invoice_date, billing_address, billing_city, billing_state, billing_country, billing_postal_code, total ) Customer ( customer_id, first_name, last_name, company, support_rep_id* (Employee), personal_info_id* (AddressInfo), contact_id* (Contact) ) Employee ( employee_id, first_name, last_name, title, reports_to* (Employee), birth_date, hire_date, personal_info_id* (AddressInfo), contact_id* (Contact) ) !AddressInfo ( address_info_id, address, city, state, country, postal_code ) Contact ( contact_id, phone, fax, email ) Playlist ( playlist_id, name ) !PlaylistTrack ( playlist_track_id, playlist_id* (Playlist), track_id* (Track) ) = Track = * __**track_id**__ (PK) * **name** (NOT NULL) * album_id* (FK → Album) * media_type_id* (FK → MediaType) * genre_id* (FK → Genre) * composer * **milliseconds** (NOT NULL) * **bytes** (NOT NULL) = Album = * __**album_id**__ (PK) * **title** (NOT NULL) * artist_id* (FK → Artist) = Artist = * __**artist_id**__ (PK) * **name** (NOT NULL) = Genre = * __**genre_id**__ (PK) * **name** (NOT NULL) = MediaType = * __**media_type_id**__ (PK) * **name** (NOT NULL) = Price = * __**price_id**__ (PK) * **value** (NOT NULL) * **date** (NOT NULL) * track_id* (FK → Track) = InvoiceLine = * __**invoice_line_id**__ (PK) * invoice_id* (FK → Invoice) * track_id* (FK → Track) * **quantity** (NOT NULL) = Invoice = * __**invoice_id**__ (PK) * customer_id* (FK → Customer) * **invoice_date** (NOT NULL) * billing_address * billing_city * billing_state * billing_country * billing_postal_code * **total** (NOT NULL) = Customer = * __**customer_id**__ (PK) * **first_name** (NOT NULL) * **last_name** (NOT NULL) * company * support_rep_id* (FK → Employee) * personal_info_id* (FK → AddressInfo) * contact_id* (FK → Contact) = Employee = * __**employee_id**__ (PK) * **first_name** (NOT NULL) * **last_name** (NOT NULL) * **title** (NOT NULL) * reports_to* (FK → Employee) * **birth_date** (NOT NULL) * **hire_date** (NOT NULL) * personal_info_id* (FK → AddressInfo) * contact_id* (FK → Contact) = AddressInfo = * __**address_info_id**__ (PK) * **address** (NOT NULL) * **city** (NOT NULL) * state * **country** (NOT NULL) * **postal_code** (NOT NULL) = Contact = * __**contact_id**__ (PK) * **phone** (NOT NULL) * fax * **email** (NOT NULL) = Playlist = * __**playlist_id**__ (PK) * **name** (NOT NULL) = PlaylistTrack = * __**playlist_track_id**__ (PK) * playlist_id* (FK → Playlist) * track_id* (FK → Track)