⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 buildvid.sql

📁 9iSQL新特性试验
💻 SQL
字号:
SET ECHO OFF

/*

 Script to build the Video Application

 for the Oracle Introduction to Oracle 

 upated: 25th June 99
 Last updated 4th November 1999 (pnathan.in)

*/

PROMPT Please wait while tables are created.

CREATE TABLE MEMBER

(member_id    NUMBER (10) 

   CONSTRAINT member_id_pk PRIMARY KEY,

 last_name    VARCHAR2(25)

   CONSTRAINT member_last_nn NOT NULL,

 first_name   VARCHAR2(25),

 address      VARCHAR2(100),

 city         VARCHAR2(30),

 phone        VARCHAR2(25),

 join_date    DATE DEFAULT SYSDATE

   CONSTRAINT join_date_nn NOT NULL

)

/

CREATE TABLE TITLE

(title_id     NUMBER(10)

   CONSTRAINT title_id_pk PRIMARY KEY,

 title        VARCHAR2(60)

   CONSTRAINT title_nn NOT NULL,

 description  VARCHAR2(400)

   CONSTRAINT title_desc_nn NOT NULL,

 rating       VARCHAR2(4)

   CONSTRAINT title_rating_ck CHECK

   (rating IN ('G','PG','R','NC17','NR')),

 category     VARCHAR2(20) DEFAULT 'DRAMA'

   CONSTRAINT title_categ_ck CHECK

   (category IN ('DRAMA','COMEDY','ACTION',

    'CHILD','SCIFI','DOCUMENTARY')),

 release_date DATE

)

/

CREATE TABLE TITLE_COPY

(copy_id      NUMBER(10),

 title_id     NUMBER(10)

   CONSTRAINT copy_title_id_fk REFERENCES title(title_id),

 status       VARCHAR2(15)

   CONSTRAINT copy_status_nn NOT NULL 

   CONSTRAINT copy_status_ck CHECK

   (status IN ('AVAILABLE','DESTROYED','RENTED','RESERVED')),

 CONSTRAINT copy_title_id_pk 

   PRIMARY KEY(copy_id, title_id)

)

/

CREATE TABLE RENTAL

(book_date    DATE DEFAULT SYSDATE,

 copy_id      NUMBER(10),

 member_id    NUMBER(10)

   CONSTRAINT rental_mbr_id_fk REFERENCES member(member_id),

 title_id     NUMBER(10),

 act_ret_date DATE,

 exp_ret_date DATE DEFAULT SYSDATE+2,

 CONSTRAINT rental_copy_title_id_fk FOREIGN KEY (copy_id, title_id)

     REFERENCES title_copy(copy_id,title_id),

 CONSTRAINT rental_id_pk PRIMARY KEY

  (book_date, copy_id, title_id, member_id)

)

/

CREATE TABLE RESERVATION

(res_date     DATE,

 member_id    NUMBER(10),

 title_id     NUMBER(10),

 CONSTRAINT res_id_pk PRIMARY KEY

  (res_date, member_id, title_id)

)

/

PROMPT TABLES CREATED

PROMPT

CREATE SEQUENCE member_id_seq

 START WITH 101

 NOCACHE

/

CREATE SEQUENCE title_id_seq

 START WITH 92

 NOCACHE

/

PROMPT SEQUENCES CREATED

PROMPT


INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Velasquez',

'Carmen','283 King Street','Seattle','587-99-6666',TO_DATE('03-MAR-1990','DD-MON-YYYY'));                                                                     

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Ngao',

'LaDoris','5 Modrany','Bratislava','586-355-8882',TO_DATE('08-MAR-1990','DD-MON-YYYY'));                                                                     

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Nagayama',

'Midori','68 Via Centrale','Sao Paolo','254-852-5764',TO_DATE('17-JUN-1991','DD-MON-YYYY'));                                                                                                                                                                       

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Quick-To-See',

'Mark','6921 King Way','Lagos','63-559-777',TO_DATE('07-APR-1990','DD-MON-YYYY'));                                                                                                                                                                       

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Ropeburn',

'Audry','86 Chu Street','Hong Kong','41-559-87',TO_DATE('04-MAR-1990','DD-MON-YYYY'));                                                                                                                                                                       

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Urguhart',

'Molly','3035 Laurier Blvd.','Quebec','418-542-9988',TO_DATE('18-JAN-1991','DD-MON-YYYY'));                                                                                                                                                                       

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Menchu',

'Roberta','Boulevard de Waterloo 41','Brussels','322-504-2228',TO_DATE('14-MAY-1990','DD-MON-YYYY'));                                                                                                                                                                       

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Biri',

'Ben','398 High St.','Columbus','614-455-9863',TO_DATE('07-APR-1990','DD-MON-YYYY'));                                                                                                                                                                       

INSERT INTO member VALUES                                                                           

(member_id_seq.NEXTVAL,'Catchpole',

'Antoinette','88 Alfred St.','Brisbane','616-399-1411',TO_DATE('09-FEB-1992','DD-MON-YYYY'));                                                                                                                                                                       


INSERT INTO TITLE (title_id, title, 

	description, rating, category, 

	release_date)

VALUES	(TITLE_ID_SEQ.NEXTVAL, 

'Willie and Christmas Too',

  'All of Willie''s friends made a Christmas list for Santa, but Willie has yet to create his own wish list.',

'G','CHILD',to_date('05-OCT-1995','DD-MON-YYYY'));

INSERT INTO TITLE (title_id, title, 

	description, rating, category, 

	release_date)

VALUES	(TITLE_ID_SEQ.NEXTVAL, 

'Alien Again',

'Another installment of science fiction history. Can the heroine save the planet from the alien life form?',

'R','SCIFI',to_date('19-MAY-1995','DD-MON-YYYY'));

INSERT INTO TITLE (title_id, title, 

	description, rating, category, 

	release_date)

VALUES	(TITLE_ID_SEQ.NEXTVAL, 

'The Glob',

'A meteor crashes near a small American town and unleashes carnivorous goo in this classic.',

'NR','SCIFI',to_date('12-AUG-1995','DD-MON-YYYY'));

INSERT INTO TITLE (title_id, title, 

	description, rating, category, 

	release_date)

VALUES	(TITLE_ID_SEQ.NEXTVAL, 

'My Day Off',

'With a little luck and a lot of ingenuity, a teenager skips school for a day in New York.',

'PG','COMEDY',to_date('12-JUL-1995','DD-MON-YYYY'));

INSERT INTO TITLE (title_id, title, 

	description, rating, category, 

	release_date)

VALUES	(TITLE_ID_SEQ.NEXTVAL, 

'Miracles on Ice',

'A six-year-old has doubts about Santa Claus. But she discovers that miracles really do exist.',

'PG','DRAMA',to_date('12-SEP-1995','DD-MON-YYYY'));

INSERT INTO TITLE (title_id, title, 

	description, rating, category, 

	release_date)

VALUES	(TITLE_ID_SEQ.NEXTVAL, 

'Soda Gang',

'After discovering a cached of drugs, a young couple find themselves pitted against a vicious gang.',

'NR','ACTION',to_date('01-JUN-1995','DD-MON-YYYY'));

INSERT INTO 	title(title_id, title, description, rating, category, release_date)
VALUES	(title_id_seq.NEXTVAL, 'Interstellar Wars', 'Futuristic
	interstellar action movie.  Can the rebels save the humans from
	the evil Empire?', 'PG', 'SCIFI',to_date('07-JUL-77','DD-MON-YYYY'));
COMMIT;

INSERT INTO title_copy VALUES (1,92,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (1,93,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (2,93,'RENTED');                                                      

INSERT INTO title_copy VALUES (1,94,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (1,95,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (2,95,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (3,95,'RENTED');                                                      

INSERT INTO title_copy VALUES (1,96,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (1,97,'AVAILABLE');                                                   

INSERT INTO title_copy VALUES (1,98,'RENTED');                                                      

INSERT INTO title_copy VALUES (2,98,'AVAILABLE');                                                   

COMMIT;

INSERT INTO reservation VALUES (sysdate-1,101,93);

INSERT INTO reservation VALUES (sysdate-2,106,102);

COMMIT;

INSERT INTO rental VALUES (sysdate-1,2,101,93,null,sysdate+1);

INSERT INTO rental VALUES (sysdate-2,3,102,95,null,sysdate);

INSERT INTO rental VALUES (sysdate-3,1,101,98,null,sysdate-1);

INSERT INTO rental VALUES (sysdate-4,1,106,97,sysdate-2,sysdate-2);

INSERT INTO rental VALUES (sysdate-3,1,101,92,sysdate-2,sysdate-1);

COMMIT;

PROMPT ** Tables built and data loaded **

SET ECHO ON

/
CREATE VIEW	title_avail AS
SELECT		t.title, c.copy_id, c.status, r.exp_ret_date
FROM		title t, title_copy c, rental r
WHERE		t.title_id = c.title_id
AND		c.copy_id = r.copy_id (+)
AND		c.title_id = r.title_id (+)
/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -