Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DROP TABLE IF EXISTS screening_table;
- DROP TABLE IF EXISTS cinema_table;
- DROP TABLE IF EXISTS movie_table;
- DROP TABLE IF EXISTS staff_table;
- CREATE TABLE staff_table(
- PRIMARY KEY (staffno),
- staffno VARCHAR(8) NOT NULL,
- surname VARCHAR(25),
- given VARCHAR(25),
- sex VARCHAR(2),
- dob DATE,
- joined DATE,
- resigned DATE,
- the_address VARCHAR(50),
- suburb VARCHAR(50),
- postcode VARCHAR(6),
- homephone VARCHAR(20),
- workphone VARCHAR(20),
- rateperhour INT,
- CONSTRAINT sex_check -- Här döper vi vårat villkor
- CHECK (sex = 'M' or sex= 'F'), --Här lägger vi till ett villkor att man måste skriva M eller F på kön
- CONSTRAINT post_check -- Här döper vi vårat villkor
- CHECK (postcode BETWEEN 2000 AND 9999), -- Här lägget vi till vilkoret
- CONSTRAINT resigned_check
- CHECK (resigned > joined),
- );
- CREATE TABLE movie_table(
- PRIMARY KEY (movieno),
- movieno VARCHAR(8) NOT NULL,
- title VARCHAR(50),
- the_length INT,
- category VARCHAR(20),
- classification CHAR(3),
- the_year INT,
- studio VARCHAR(20),
- );
- CREATE TABLE cinema_table(
- PRIMARY KEY (cinemano),
- cinemano VARCHAR(8) NOT NULL,
- numericseats INT,
- screensize CHAR(1),
- );
- CREATE TABLE screening_table (
- PRIMARY KEY (screeningno),
- screeningno VARCHAR(8) NOT NULL,
- cinemano VARCHAR(8),
- movieno VARCHAR(8),
- supervisorno VARCHAR(8),
- cameraopno VARCHAR(8),
- hourstart INT,
- screeningdate DATE,
- FOREIGN KEY (movieno) REFERENCES movie_table(movieno),
- FOREIGN KEY (supervisorno) REFERENCES staff_table(staffno), -- Eget antagande att supervisorno är detsamma som staffno för att koppla ihop de två tabellerna!
- FOREIGN KEY (cinemano) REFERENCES cinema_table(cinemano)
- );
- INSERT INTO staff_table
- VALUES ('11','Snowden','Edward','M','1960-01-13','1981-09-09',NULL,'Slalomvägen 2','Saltsjöbaden','2000','08-7172500','0708600330','2888'),
- ('22','Martensson','Helena','F','1994-04-17','2019-01-25','2019-01-30','Bjornkarrsgatan 7J','Fiskeskit','3000','013-152425','0708566321','3'),
- ('10','Hofren','Johanna','F','1998-01-25','2010-04-07','2018-07-20','Nya Tanneforsvägen 15A','Linköping','4000','070-828282','0707931717','3000');
- INSERT INTO movie_table (movieno, category, title, the_length)
- VALUES ('2','Action','Björnbröderna','2'),
- ('3','Drama','Notting Hill','2'),
- ('4','Romance','The Notebook','3'),
- ('5','Comedy','American Pie','1');
- INSERT INTO cinema_table
- VALUES ('1337','103','S');
- INSERT INTO screening_table
- VALUES ('37','1337','2','11','5','19','2019-11-18');
- /*Här höjer vi och sänker värdet på hur långt ett efternamn kan vara. För att testa skriver du ut efternamn med bokstäver större än värdet på siffran - detta ska ej fungera! */
- ALTER TABLE staff_table
- ALTER COLUMN surname VARCHAR(35) NOT NULL;
- ALTER TABLE staff_table
- ALTER COLUMN surname VARCHAR(25) NOT NULL;
- /* Här lägger vi till en primary key, för att testa skriver du ut två primary keys i varje tabell med samma värde - det ska ej fungera! (OM man ej gjort det i tabellerna ovan).
- ALTER TABLE staff_table
- ADD PRIMARY KEY (staffno);
- ALTER TABLE screening_table
- ADD PRIMARY KEY (screeningno);
- ALTER TABLE cinema_table
- ADD PRIMARY KEY (cinemano);
- ALTER TABLE movie_table
- ADD PRIMARY KEY (movieno);
- */
- -- Här lägger vi till en foreign key för att koppla samman två tabeller. (OM man ej gjort det i tabellerna ovan).
- /*
- ALTER TABLE screening_table
- ADD FOREIGN KEY (movieno) REFERENCES movie_table(movieno);
- */
- -- Här tar vi bort en perspn från staff_table
- DELETE FROM staff_table WHERE dob='1998-01-25';
- -- Här skriver vi ut allt som tabellerna innebär. Då när du testkör ser du varje kolumn
- SELECT *
- FROM staff_table;
- SELECT *
- FROM cinema_table;
- SELECT *
- FROM movie_table;
- SELECT *
- FROM screening_table;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement