Ash Oracle
Ash Oracle
/ G12 ICT-B
1.)
A.) CREATE TABLE members
(member_id NUMBER(10) CONSTRAINT members_member_id_pk PRIMARY KEY,
last_name VARCHAR2(25) CONSTRAINT members_last_name_nn NOT NULL,
first_name VARCHAR2(25),
address VARCHAR2(100),
city VARCHAR2(30),
phone VARCHAR2(15),
join_date DATE DEFAULT SYSDATE CONSTRAINT members_join_date_nn NOT NULL);
C.)
CREATE TABLE title_copy
(copy_id NUMBER(10),
title_id NUMBER(10) CONSTRAINT title_copy_title_id_fk REFERENCES title(title_id),
status VARCHAR2(15) CONSTRAINT title_copy_status_nn NOT NULL CONSTRAINT
title_copy_status_ck CHECK (status
IN('AVAILABLE','DESTROYED','RENTED','RESERVED')),
CONSTRAINT title_copy_copy_id_title_id PRIMARY KEY (copy_id,title_id));
D.)
CREATE TABLE rental
(book_date DATE DEFAULT SYSDATE,
member_id NUMBER(10) CONSTRAINT rental_member_id_fk
REFERENCES member(member_id),
copy_id NUMBER(10),
act_ret_date DATE,
exp_ret_date DATE DEFAULT SYSDATE + 2,
title_id NUMBER(10),
CONSTRAINT rental_book_date_copy_title_pk
PRIMARY KEY (book_date, member_id,
copy_id,title_id),
CONSTRAINT rental_copy_id_title_id_fk
FOREIGN KEY (copy_id, title_id)
REFERENCES title_copy(copy_id, title_id));
E.)
CREATE TABLE reservation (
res_date DATE CONSTRAINT reservation_res_date_nn NOT NULL,
member_id NUMBER(10) CONSTRAINT reservation_member_id_fk1 REFERENCES
member_id(member),
title_id NUMBER(10) CONSTRAINT reservation_title_id_fk2_ REFERENCES title(title_id),
CONSTRAINT reservation_member_id_title_id_pk PRIMARY KEY (member_id,title_id));
2.)
SELECT table_name
FROM user_tables
WHERE table_name IN ('MEMBER', 'TITLE', 'TITLE_COPY',
'RENTAL', 'RESERVATION');
SELECT constraint_name, constraint_type, table_name
FROM user_constraints
WHERE table_name IN ('MEMBER', 'TITLE', 'TITLE_COPY',
'RENTAL', 'RESERVATION');
3.)
A.)
CREATE SEQUENCE member_id_seq
START WITH 101
NOCACHE
B.)
CREATE SEQUENCE title_id_seq
START WITH 92
NOCACHE;
D.
5.
6.
A.
B.
C.
7.
A. B.
C.
8.