/* clean up old tables; must drop tables with foreign keys first due to referential integrity constraints Obtained from Avi Silberschatz' book Website: http://codex.cs.yale.edu/avi/db-book/db5/material-dir/supplements Queries from Gary Lindstrom */ delete from depositor; drop table depositor; delete from borrower; drop table borrower; delete from account; drop table account; delete from branch; drop table branch; delete from loan; drop table loan; delete from customer; drop table customer; create table account (account_number varchar(15) not null, branch_name varchar(15) not null, balance number not null, primary key(account_number)); create table branch (branch_name varchar(15) not null, branch_city varchar(15) not null, assets number not null, primary key(branch_name)); create table customer (customer_name varchar(15) not null, customer_street varchar(12) not null, customer_city varchar(15) not null, primary key(customer_name)); create table loan (loan_number varchar(15) not null, branch_name varchar(15) not null, amount number not null, primary key(loan_number)); create table depositor (customer_name varchar(15) not null, account_number varchar(15) not null, primary key(customer_name, account_number), foreign key(account_number) references account(account_number), foreign key(customer_name) references customer(customer_name)); create table borrower (customer_name varchar(15) not null, loan_number varchar(15) not null, primary key(customer_name, loan_number), foreign key(customer_name) references customer(customer_name), foreign key(loan_number) references loan(loan_number));