Program List: 1 Insurance Database
Program List: 1 Insurance Database
1 Insurance Database
5 Bank Database
PROGRAM 1: INSURANCE DATABASE
I. Consider the Insurance database given below. The primary keys are underlined and
the data types are specified.
i) Create the above tables by properly specifying the primary keys and the foreign
keys.
SQL>create table car(regno char(10) primary key, model char(10), year number(4));
Table created.
SQL> /
Enter value for driverid: A02
Enter value for name: Pradeep
Enter value for address: Rajajinagar
old 1: insert into person values('&driverid','&name','&address')
new 1: insert into person values('A02','Pradeep','Rajajinagar')
1 row created.
SQL> /
Enter value for driverid: A03
Enter value for name: Smith
Enter value for address: Ashoknagar
old 1: insert into person values('&driverid','&name','&address')
new 1: insert into person values('A03','Smith','Ashoknagar')
1 row created.
SQL> /
Enter value for driverid: A04
Enter value for name: Venu
Enter value for address: N.R.Colony
old 1: insert into person values('&driverid','&name','&address')
new 1: insert into person values('A04','Venu','N.R.Colony')
1 row created.
SQL> /
Enter value for driverid: A05
Enter value for name: John
Enter value for address: Hanumanth Nagar
old 1: insert into person values('&driverid','&name','&address')
new 1: insert into person values('A05','John','Hanumanth Nagar')
1 row created.
SQL> /
Enter value for regno: KA031181
Enter value for model: Lancer
Enter value for year: 1957
old 1: insert into car values('®no','&model',&year)
new 1: insert into car values('KA031181','Lancer',1957)
1 row created.
SQL> /
Enter value for regno: KA095477
Enter value for model: Toyota
Enter value for year: 1998
old 1: insert into car values('®no','&model',&year)
new 1: insert into car values('KA095477','Toyota',1998)
1 row created.
SQL> /
Enter value for regno: KA053408
Enter value for model: Honda
Enter value for year: 2008
old 1: insert into car values('®no','&model',&year)
new 1: insert into car values('KA053408','Honda',2008)
1 row created.
SQL> /
Enter value for regno: KA041702
Enter value for model: Audi
Enter value for year: 2005
old 1: insert into car values('®no','&model',&year)
new 1: insert into car values('KA041702','Audi',2005)
1 row created.
SQL> /
Enter value for reportno: 12
Enter value for adate: 02-FEB-04
Enter value for location: Southend Circle
old 1: insert into accident values(&reportno,'&accd_date','&location')
new 1: insert into accident values(112,'02-FEB-04','Southend Circle')
1 row created.
SQL> /
Enter value for reportno: 13
Enter value for adate: 21-JAN-03
Enter value for location: Bulltemple Road
old 1: insert into accident values(&reportno,'&accd_date','&location')
new 1: insert into accident values(113,'21-JAN-03','Bulltemple Road')
1 row created.
SQL> /
Enter value for reportno: 14
Enter value for adate: 17-FEB-08
Enter value for location: Mysore Road
old 1: insert into accident values(&reportno,'&accd_date','&location')
new 1: insert into accident values(114,'17-FEB-08','Mysore Road')
1 row created.
SQL> /
Enter value for reportno: 15
Enter value for adate: 04-MAR-05
Enter value for location: Kanakpura Road
old 1: insert into accident values(&reportno,'&accd_date','&location')
new 1: insert into accident values(115,'04-MAR-05','Kanakpura Road')
1 row created.
SQL> /
Enter value for driverid: A02
Enter value for regno: KA053408
old 1: insert into owns values('&driverid','®no')
new 1: insert into owns values('A02','KA053408')
1 row created.
SQL> /
Enter value for driverid: A04
Enter value for regno: KA031181
old 1: insert into owns values('&driverid','®no')
new 1: insert into owns values('A04','KA031181')
1 row created.
SQL> /
Enter value for driverid: A03
Enter value for regno: KA095477
old 1: insert into owns values('&driverid','®no')
new 1: insert into owns values('A03','KA095477')
1 row created.
SQL> /
Enter value for driverid: A05
Enter value for regno: KA041702
old 1: insert into owns values('&driverid','®no')
new 1: insert into owns values('A05','KA041702')
1 row created.
SQL> /
Enter value for driverid: A02
Enter value for regno: KA053408
Enter value for reportno: 12
Enter value for damage_amount: 50000
old 1: insert into participated values('&driverid','®no',&reportno,&damage_amount)
new 1: insert into participated values('A02','KA053408',12,50000)
1 row created.
SQL> /
Enter value for driverid: A03
Enter value for regno: KA095477
Enter value for reportno: 13
Enter value for damage_amount: 25000
old 1: insert into participated values('&driverid','®no',&reportno,&damage_amount)
new 1: insert into participated values('A03','KA095477',13,25000)
1 row created.
SQL> /
Enter value for driverid: A04
Enter value for regno: KA031181
Enter value for reportno: 14
Enter value for damage_amount: 3000
old 1: insert into participated values('&driverid','®no',&reportno,&damage_amount)
new 1: insert into participated values('A04','KA031181',14,3000)
1 row created.
SQL> /
Enter value for driverid: A05
Enter value for regno: KA041702
Enter value for reportno: 15
Enter value for damage_amount: 5000
old 1: insert into participated values('&driverid','®no',&reportno,&damage_amount)
new 1: insert into participated values('A05','KA041702',15,5000)
1 row created.
iv) Find the total number of people who owned cars that involved in accidents in 2008.
v) Find the number of accidents in which cars belonging to a specific model were
involved.
SQL> select count(reportno)as CNT from car c,participated p where c.regno=p.regno and
model='Lancer';
CNT
----------
1
PROGRAM 2: ORDER PROCESSING DATABASE
II. Consider the following relations for an Order Processing database application in
a company.
i) Create the above tables by properly specifying the primary keys and the foreign keys
and the foreign keys.
SQL> /
Enter value for custno: 772
Enter value for cname: SUMAN
Enter value for city: MUMBAI
old 1: insert into customer values(&custno,'&cname','&city')
new 1: insert into customer values(772,'SUMAN','MUMBAI')
1 row created.
SQL> /
Enter value for custno: 773
Enter value for cname: SOURAV
Enter value for city: CALICUT
old 1: insert into customer values(&custno,'&cname','&city')
new 1: insert into customer values(773,'SOURAV','CALICUT')
1 row created.
SQL> /
Enter value for custno: 774
Enter value for cname: LAILA
Enter value for city: HYDERABAD
old 1: insert into customer values(&custno,'&cname','&city')
new 1: insert into customer values(774,'LAILA','HYDERABAD')
1 row created.
SQL> /
Enter value for custno: 775
Enter value for cname: FAIZAL
Enter value for city: BANGALORE
old 1: insert into customer values(&custno,'&cname','&city')
new 1: insert into customer values(775,'FAIZAL','BANGALORE')
1 row created.
SQL> /
Enter value for itemno: 5002
Enter value for unitprice: 750
old 1: insert into item values(&itemno,&unitprice)
new 1: insert into item values(5002,750)
1 row created.
SQL> /
Enter value for itemno: 5003
Enter value for unitprice: 150
old 1: insert into item values(&itemno,&unitprice)
new 1: insert into item values(5003,150)
1 row created.
SQL> /
Enter value for itemno: 5004
Enter value for unitprice: 600
old 1: insert into item values(&itemno,&unitprice)
new 1: insert into item values(5004,600)
1 row created.
SQL> /
Enter value for itemno: 5005
Enter value for unitprice: 890
old 1: insert into item values(&itemno,&unitprice)
new 1: insert into item values(5005,890)
1 row created.
SQL> /
Enter value for warehouseno: 2
Enter value for city: BOMBAY
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(2,'BOMBAY')
1 row created.
SQL> /
Enter value for warehouseno: 3
Enter value for city: CHENNAI
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(3,'CHENNAI')
1 row created.
SQL> /
Enter value for warehouseno: 4
Enter value for city: BANGALORE
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(4,'BANGALORE')
1 row created.
SQL> /
Enter value for warehouseno: 5
Enter value for city: BANGALORE
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(5,'BANGALORE')
1 row created.
SQL> /
Enter value for warehouseno: 6
Enter value for city: DELHI
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(6,'DELHI')
1 row created.
SQL> /
Enter value for warehouseno: 7
Enter value for city: BOMBAY
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(7,'BOMBAY')
1 row created.
SQL> /
Enter value for warehouseno: 8
Enter value for city: CHENNAI
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(8,'CHENNAI')
1 row created.
SQL> /
Enter value for warehouseno: 9
Enter value for city: DELHI
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(9,'DELHI')
1 row created.
SQL> /
Enter value for warehouseno: 10
Enter value for city: BANGALORE
old 1: insert into warehouse values(&warehouseno,'&city')
new 1: insert into warehouse values(10,'BANGALORE')
1 row created.
SQL> /
Enter value for ordid: 112
Enter value for odate: 30-JUL-02
Enter value for custno: 774
Enter value for ordamt: 6000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(112,'30-JUL-02',774,6000)
1 row created.
SQL> /
Enter value for ordid: 113
Enter value for odate: 03-APR-03
Enter value for custno: 775
Enter value for ordamt: 9000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(113,'03-APR-03',775,9000)
1 row created.
SQL> /
Enter value for ordid: 114
Enter value for odate: 03-NOV-03
Enter value for custno: 775
Enter value for ordamt: 29000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(114,'03-NOV-03',775,29000)
1 row created.
SQL> /
Enter value for ordid: 115
Enter value for odate: 10-DEC-03
Enter value for custno: 773
Enter value for ordamt: 29000.
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(115,'10-DEC-03',773,29000.)
1 row created.
SQL> /
Enter value for ordid: 116
Enter value for odate: 19-AUG-04
Enter value for custno: 772
Enter value for ordamt: 56000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(116,'19-AUG-04',772,56000)
1 row created.
SQL> /
Enter value for ordid: 117
Enter value for odate: 10-SEP-04
Enter value for custno: 771
Enter value for ordamt: 20000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(117,'10-SEP-04',771,20000)
1 row created.
SQL> /
Enter value for ordid: 118
Enter value for odate: 20-NOV-04
Enter value for custno: 775
Enter value for ordamt: 29000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(118,'20-NOV-04',775,29000)
1 row created.
SQL> /
Enter value for ordid: 119
Enter value for odate: 13-FEB-05
Enter value for custno: 774
Enter value for ordamt: 29000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(119,'13-FEB-05',775,29000)
1 row created.
SQL> /
Enter value for ordid: 120
Enter value for odate: 13-OCT-05
Enter value for custno: 775
Enter value for ordamt: 29000
old 1: insert into orders values(&ordid,'&odate',&custno,&ordamt)
new 1: insert into orders values(120,'13-OCT-05',775,29000)
1 row created.
SQL> /
Enter value for orderno: 112
Enter value for itemno: 5003
Enter value for qty: 20
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(112,5003,20)
1 row created.
SQL> /
Enter value for orderno: 113
Enter value for itemno: 5002
Enter value for qty: 50
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(113,5002,50)
1 row created.
SQL> /
Enter value for orderno: 114
Enter value for itemno: 5005
Enter value for qty: 60
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(114,5005,60)
1 row created.
SQL> /
Enter value for orderno: 115
Enter value for itemno: 5004
Enter value for qty: 90
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(115,5004,90)
1 row created.
SQL> /
Enter value for orderno: 116
Enter value for itemno: 5001
Enter value for qty: 10
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(116,5001,10)
1 row created.
SQL> /
Enter value for orderno: 117
Enter value for itemno: 5003
Enter value for qty: 80
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(117,5003,80)
1 row created.
SQL> /
Enter value for orderno: 118
Enter value for itemno: 5005
Enter value for qty: 50
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(118,5005,50)
1 row created.
SQL> /
Enter value for orderno: 119
Enter value for itemno: 5002
Enter value for qty: 10
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(119,5002,10)
1 row created.
SQL> /
Enter value for orderno: 120
Enter value for itemno: 5004
Enter value for qty: 45
old 1: insert into order_item values(&orderno,&itemno,&qty)
new 1: insert into order_item values(120,5004,45)
1 row created.
SQL> /
Enter value for orderno: 112
Enter value for warehouseno: 5
Enter value for shipdate: 10-SEP-02
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(112,5,'10-SEP-02')
1 row created.
SQL> /
Enter value for orderno: 113
Enter value for warehouseno: 8
Enter value for shipdate: 10-FEB-03
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(113,8,'10-FEB-03')
1 row created.
SQL> /
Enter value for orderno: 114
Enter value for warehouseno: 3
Enter value for shipdate: 10-DEC-03
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(114,3,'10-DEC-03')
1 row created.
SQL> /
Enter value for orderno: 115
Enter value for warehouseno: 9
Enter value for shipdate: 19-JAN-04
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(115,9,'19-JAN-04')
1 row created.
SQL> /
Enter value for orderno: 116
Enter value for warehouseno: 1
Enter value for shipdate: 20-SEP-04
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(116,1,'20-SEP-04')
1 row created.
SQL> /
Enter value for orderno: 117
Enter value for warehouseno: 5
Enter value for shipdate: 10-SEP-04
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(117,5,'10-SEP-04')
1 row created.
SQL> /
Enter value for orderno: 118
Enter value for warehouseno: 7
Enter value for shipdate: 30-NOV-04
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(118,7,'30-NOV-04')
1 row created.
SQL> /
Enter value for orderno: 119
Enter value for warehouseno: 7
Enter value for shipdate: 30-APR-05
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(119,7,'30-APR-05')
1 row created.
SQL> /
Enter value for orderno: 120
Enter value for warehouseno: 6
Enter value for shipdate: 21-DEC-05
old 1: insert into shipment values(&orderno,&warehouseno,'&shipdate')
new 1: insert into shipment values(120,6,'21-DEC-05')
1 row created.
iii) Produce a listing: CUSTNAME, #oforders, AVG_ORDER_AMT, where the middle column is
the total numbers of orders by the customer and the last column is the average order
amount for that customer.
SQL> select cname as CUSTNAME,count(orderno) as NO_OF_ORDERS,avg(ordamt) as
AVG_ORD_AMT from customer a,order b where a.custno=b.custno group by cname;
CUSTNAME NO_OF_ORDERS AVG_ORD_AMT
-------------------- ------------ -------------
FAIZAL 4 24000
LAILA 2 17500
PUSHPA K 2 19000
SOURAV 1 29000
SUMAN 1 56000
iv) List the order# for orders that were shipped from all warehouses that the company
has in a specific city.
SQL> select * from orders where orderno in(select orderno from shipment where
warehouseno in(select warehouseno from warehouse where city='CHENNAI'));
ORDERNO ODATE CUSTNO ORDAMT
---------- --------- ---------- ----------
113 03-APR-03 775 9000
114 03-NOV-03 775 29000
v) Demonstrate how you delete item# 10 from the ITEM table and make that field null in
the ORDER_ITEM table.
SQL> delete from item1 where itemno=5001;
1 row deleted.
PROGRAM 3: STUDENT ENROLLMENT DATABASE
III. Consider the following database of student enrollment in courses and books
adopted for each course.
i) Create the above tables by properly specifying the primary keys and the foreign
keys.
SQL> /
Enter value for regno: IS02
Enter value for name: SMITH
Enter value for major: USP
Enter value for bdate: 23-DEC-87
old 1: insert into student values('®no','&name','&major','&bdate')
new 1: insert into student values('IS02','SMITH','USP','23-DEC-87')
1 row created.
SQL> /
Enter value for regno: EC03
Enter value for name: AHMED
Enter value for major: SNS
Enter value for bdate: 17-APR-85
old 1: insert into student values('®no','&name','&major','&bdate')
new 1: insert into student values('EC03','AHMED','SNS','17-APR-85')
1 row created.
SQL> /
Enter value for regno: CS03
Enter value for name: SNEHA
Enter value for major: DBMS
Enter value for bdate: 01-JAN-87
old 1: insert into student values('®no','&name','&major','&bdate')
new 1: insert into student values('CS03','SNEHA','DBMS','01-JAN-87')
1 row created.
SQL> /
Enter value for regno: TC05
Enter value for name: AKHILA
Enter value for major: EC
Enter value for bdate: 06-OCT-86
old 1: insert into student values('®no','&name','&major','&bdate')
new 1: insert into student values('TC05','AKHILA','EC','06-OCT-86')
1 row created.
SQL> /
Enter value for courseno: 22
Enter value for cname: USP
Enter value for dept: IS
old 1: insert into course values(&courseno,'&cname','&dept')
new 1: insert into course values(22,'USP','IS')
1 row created.
SQL> /
Enter value for courseno: 33
Enter value for cname: SNS
Enter value for dept: EC
old 1: insert into course values(&courseno,'&cname','&dept')
new 1: insert into course values(33,'SNS','EC')
1 row created.
SQL> /
Enter value for courseno: 44
Enter value for cname: DBMS
Enter value for dept: CS
old 1: insert into course values(&courseno,'&cname','&dept')
new 1: insert into course values(44,'DBMS','CS')
1 row created.
SQL> /
Enter value for courseno: 55
Enter value for cname: EC
Enter value for dept: TC
old 1: insert into course values(&courseno,'&cname','&dept')
new 1: insert into course values(55,'EC','TC')
1 row created.
SQL> /
Enter value for regno: IS02
Enter value for courseno: 22
Enter value for sem: 80
Enter value for marks: 6
old 1: insert into enroll values('®no',&courseno,&sem,&marks)
new 1: insert into enroll values('IS02',22,6,80)
1 row created.
SQL> /
Enter value for regno: EC03
Enter value for courseno: 33
Enter value for sem: 80
Enter value for marks: 2
old 1: insert into enroll values('®no',&courseno,&sem,&marks)
new 1: insert into enroll values('EC03',33,2,80)
1 row created.
SQL> /
Enter value for regno: CS03
Enter value for courseno: 44
Enter value for sem: 75
Enter value for marks: 6
old 1: insert into enroll values('®no',&courseno,&sem,&marks)
new 1: insert into enroll values('CS03',44,6,75)
1 row created.
SQL> /
Enter value for regno: TC05
Enter value for courseno: 55
Enter value for sem: 87
Enter value for marks: 2
old 1: insert into enroll values('®no',&courseno,&sem,&marks)
new 1: insert into enroll values('TC05',55,2,87)
1 row created.
SQL> /
Enter value for book_isbn: 2
Enter value for book_title: Fundamentals of DS
Enter value for publish: Princeton
Enter value for author: Godse
old 1: insert into text values(&book_isbn,'&book_title','&publish','&author')
new 1: insert into text values(2,'Fundamentals of DS','Princeton','Godse')
1 row created.
SQL> /
Enter value for book_isbn: 3
Enter value for book_title: Fundamentals of DBMS
Enter value for publish: Princeton
Enter value for author: Navathe
old 1: insert into text values(&book_isbn,'&book_title','&publish','&author')
new1: insert into text values(3,'Fundamentals of DBMS','Princeton','Navathe')
1 row created.
SQL> /
Enter value for book_isbn: 4
Enter value for book_title: SQL
Enter value for publish: Princeton
Enter value for author: Foley
old 1: insert into text values(&book_isbn,'&book_title','&publish','&author')
new 1: insert into text values(4,'SQL','Princeton','Foley')
1 row created.
SQL> /
Enter value for book_isbn: 5
Enter value for book_title: Electronic circuits
Enter value for publish: TMH
Enter value for author: Elmasri
old 1: insert into text values(&book_isbn,'&book_title','&publish','&author')
new 1: insert into text values(5,'Electronic circuits','TMH','Elmasri')
1 row created.
SQL> /
Enter value for book_isbn: 5
Enter value for book_title: Electronic circuits
Enter value for publish: TMH
Enter value for author: Elmasri
old 1: insert into text values(&book_isbn,'&book_title','&publish','&author')
new 1: insert into text values(5,'Electronic circuits','TMH','Elmasri')
1 row created.
SQL> /
Enter value for book_isbn: 6
Enter value for book_title: Adv unix prog
Enter value for publish: TMH
Enter value for author: Stevens
old 1: insert into text values(&book_isbn,'&book_title','&publish','&author')
new 1: insert into text values(6,'Adv unix prog','TMH','Stevens')
1 row created.
SQL> /
Enter value for courseno: 11
Enter value for sem: 4
Enter value for book_isbn: 2
old 1: insert into book_adoption values(&courseno,&sem,&book_isbn)
new 1: insert into book_adoption values(11,4,2)
1 row created.
SQL> /
Enter value for courseno: 44
Enter value for sem: 6
Enter value for book_isbn: 3
old 1: insert into book_adoption values(&courseno,&sem,&book_isbn)
new 1: insert into book_adoption values(44,6,3)
1 row created.
SQL> /
Enter value for courseno: 44
Enter value for sem: 6
Enter value for book_isbn: 4
old 1: insert into book_adoption values(&courseno,&sem,&book_isbn)
new 1: insert into book_adoption values(44,6,4)
1 row created.
SQL> /
Enter value for courseno: 55
Enter value for sem: 2
Enter value for book_isbn: 5
old 1: insert into book_adoption values(&courseno,&sem,&book_isbn)
new 1: insert into book_adoption values(55,2,5)
1 row created.
SQL> /
Enter value for courseno: 22
Enter value for sem: 6
Enter value for book_isbn: 6
old 1: insert into book_adoption values(&courseno,&sem,&book_isbn)
new 1: insert into book_adoption values(22,6,6)
1 row created.
iii) Demonstrate how you add a new text book to the database and make this book be
adopted by some department.
iv) Produce a list of text books (include Course #, Book-ISBN, Book-title) in the
alphabetical order for courses offered by the ‘CS’ department that use more than
two books.
v) List any department that has all its adopted books published by a specific
publisher.
DEPT PUBLISHER
---------- -------------------------
CS Princeton
CS Princeton
CS Princeton
CS Princeton
PROGRAM 4: BOOK DEALER DATABASE
i) Create the above tables by properly specifying the primary keys and the foreign
keys.
SQL> /
Enter value for aid: 1002
Enter value for name: STEVENS
Enter value for city: ZOMBI
Enter value for country: UGANDA
old 1: insert into author values(&aid,'&name','&city','&country')
new 1: insert into author values(1002,'STEVENS','ZOMBI','UGANDA')
1 row created.
SQL> /
Enter value for aid: 1003
Enter value for name: M MANO
Enter value for city: CAIR
Enter value for country: CANADA
old 1: insert into author values(&aid,'&name','&city','&country')
new 1: insert into author values(1003,'M MANO','CAIR','CANADA')
1 row created.
SQL> /
Enter value for aid: 1004
Enter value for name: KARTHIK B.P.
Enter value for city: NEW YORK
Enter value for country: USA
old 1: insert into author values(&aid,'&name','&city','&country')
new 1: insert into author values(1004,'KARTHIK B.P.','NEW YORK','USA')
1 row created.
SQL> /
Enter value for aid: 1005
Enter value for name: WILLIAM STALLINGS
Enter value for city: LAS VEGAS
Enter value for country: USA
old 1: insert into author values(&aid,'&name','&city','&country')
new 1: insert into author values(1005,'WILLIAM STALLINGS','LAS VEGAS','USA')
1 row created.
SQL> /
Enter value for pid: 2
Enter value for name: EEE
Enter value for city: NEW SOUTH VALES
Enter value for country: USA
old 1: insert into publisher values(&pid,'&name','&city','&country')
new 1: insert into publisher values(2,'EEE','NEW SOUTH VALES','USA')
1 row created.
SQL> /
Enter value for pid: 3
Enter value for name: PHI
Enter value for city: DELHI
Enter value for country: INDIA
old 1: insert into publisher values(&pid,'&name','&city','&country')
new 1: insert into publisher values(3,'PHI','DELHI','INDIA')
1 row created.
SQL> /
Enter value for pid: 4
Enter value for name: WILLEY
Enter value for city: BERLIN
Enter value for country: GERMANY
old 1: insert into publisher values(&pid,'&name','&city','&country')
new 1: insert into publisher values(4,'WILLEY','BERLIN','GERMANY')
1 row created.
SQL> /
Enter value for pid: 5
Enter value for name: MGH
Enter value for city: NEW YORK
Enter value for country: USA
old 1: insert into publisher values(&pid,'&name','&city','&country')
new 1: insert into publisher values(5,'MGH','NEW YORK','USA')
1 row created.
SQL> select * from publisher;
PUBLISHERID NAME CITY COUNTRY
----------- -------------------- -------------------- ---------------
1 PEARSON NEW YORK USA
2 EEE NEW SOUTH VALES USA
3 PHI DELHI INDIA
4 WILLEY BERLIN GERMANY
5 MGH NEW YORK USA
SQL> /
Enter value for cid: 1002
Enter value for description: ALGORITHM DESIGN
old 1: insert into category values(&cid,'&description')
new 1: insert into category values(1002,'ALGORITHM DESIGN')
1 row created.
SQL> /
Enter value for cid: 1003
Enter value for description: ELECTRONICS
old 1: insert into category values(&cid,'&description')
new 1: insert into category values(1003,'ELECTRONICS')
1 row created.
SQL> /
Enter value for cid: 1004
Enter value for description: PROGRAMMING
old 1: insert into category values(&cid,'&description')
new 1: insert into category values(1004,'PROGRAMMING')
1 row created.
SQL> /
Enter value for cid: 1005
Enter value for description: OPRATING SYSTEMS
old 1: insert into category values(&cid,'&description')
new 1: insert into category values(1005,'OPRATING SYSTEMS')
1 row created.
SQL> /
Enter value for bid: 13
Enter value for title: Logic Design
Enter value for aid: 1003
Enter value for pid: 3
Enter value for cid: 1002
Enter value for year: 1999
Enter value for price: 225
old 1: insert into catalog values(&bid,'&title',&aid,&pid,&cid,&year,&price)
new 1: insert into catalog values(13,'Logic Design',1003,3,1002,1999,225)
1 row created.
SQL> /
Enter value for bid: 14
Enter value for title: Server Prg
Enter value for aid: 1004
Enter value for pid: 4
Enter value for cid: 1004
Enter value for year: 2001
Enter value for price: 332.56
old 1: insert into catalog values(&bid,'&title',&aid,&pid,&cid,&year,&price)
new 1: insert into catalog values(14,'Server Prg',1004,4,1004,2001,332.56)
1 row created.
SQL> /
Enter value for bid: 15
Enter value for title: Linux OS
Enter value for aid: 1005
Enter value for pid: 5
Enter value for cid: 1005
Enter value for year: 2003
Enter value for price: 325.58
old 1: insert into catalog values(&bid,'&title',&aid,&pid,&cid,&year,&price)
new 1: insert into catalog values(15,’Linux OS',1005,5,1005,2003,325.58)
1 row created.
SQL> /
Enter value for bid: 16
Enter value for title: C++ Bible
Enter value for aid: 1005
Enter value for pid: 5
Enter value for cid: 1001
Enter value for year: 2000
Enter value for price: 525.58
old 1: insert into catalog values(&bid,'&title',&aid,&pid,&cid,&year,&price)
new 1: insert into catalog values(16,'C++ Bible',1005,5,1001,2000,525.58)
1 row created.
SQL> /
Enter value for bid: 17
Enter value for title: COBOL Handbook
Enter value for aid: 1005
Enter value for pid: 4
Enter value for cid: 1001
Enter value for year: 2000
Enter value for price: 657.58
old 1: insert into catalog values(&bid,'&title',&aid,&pid,&cid,&year,&price)
new1: insert into catalog values(17,'COBOL Handbook',1005,4,1001,2000,657.58)
1 row created.
SQL> /
Enter value for orderno: 2
Enter value for bookid: 12
Enter value for qunatity: 8
old 1: insert into order_details values(&orderno,&bookid,&qunatity)
new 1: insert into order_details values(2,12,8)
1 row created.
SQL> /
Enter value for orderno: 3
Enter value for bookid: 13
Enter value for qunatity: 15
old 1: insert into order_details values(&orderno,&bookid,&qunatity)
new 1: insert into order_details values(3,13,15)
1 row created.
SQL> /
Enter value for orderno: 4
Enter value for bookid: 14
Enter value for qunatity: 22
old 1: insert into order_details values(&orderno,&bookid,&qunatity)
new 1: insert into order_details values(4,14,22)
1 row created.
SQL> /
Enter value for orderno: 5
Enter value for bookid: 15
Enter value for qunatity: 3
old 1: insert into order_details values(&orderno,&bookid,&qunatity)
new 1: insert into order_details values(5,15,3)
1 row created.
SQL> select * from author where authorid in(select authorid from catalog1 group
by authorid having count(*) > 2 and authorid in(select authorid from catalog1
where price > (select avg(price) from catalog1) and year>=2000));
iv) Find the author of the book which has maximum sales.
SQL> select name from author where authorid in(select authorid from catalog1 where
bookid in(select bookid from order_details where quantity=(select max(quantity) from
order_details)));
NAME
--------------------
KARTHIK B.P.
v) Demonstrate how you increase the price of books published by a specific publisher
by 10%.
i) Create the above tables by properly specifying the primary keys and the foreign
keys.
SQL> /
Enter value for bname: SBI RAJAJI NAGAR
Enter value for bcity: BANGALORE
Enter value for assets: 500000
old 1: insert into branch values('&bname','&bcity',&assets)
new 1: insert into branch values('SBI RAJAJI NAGAR','BANGALORE',500000)
1 row created.
SQL> /
Enter value for bname: SBI JAYANAGAR
Enter value for bcity: BANGALORE
Enter value for assets: 660000
old 1: insert into branch values('&bname','&bcity',&assets)
new 1: insert into branch values('SBI JAYANAGAR','BANGALORE',660000)
1 row created.
SQL> /
Enter value for bname: SBI VIJAY NAGAR
Enter value for bcity: BANGALORE
Enter value for assets: 870000
old 1: insert into branch values('&bname','&bcity',&assets)
new 1: insert into branch values('SBI VIJAY NAGAR','BANGALORE',870000)
1 row created.
SQL> /
Enter value for bname: SBI HOSAKEREHALLI
Enter value for bcity: BANGALORE
Enter value for assets: 550000
old 1: insert into branch values('&bname','&bcity',&assets)
new 1: insert into branch values('SBI HOSAKEREHALLI','BANGALORE',550000)
1 row created.
SQL> /
Enter value for accno: 1234603
Enter value for bname: SBI VIJAY NAGAR
Enter value for balance: 5000
old 1: insert into account values(&accno,'&bname',&balance)
new 1: insert into account values(1234603,'SBI VIJAY NAGAR',5000)
1 row created.
SQL> /
Enter value for accno: 1234604
Enter value for bname: SBI JAYANAGAR
Enter value for balance: 5000
old 1: insert into account values(&accno,'&bname',&balance)
new 1: insert into account values(1234604,'SBI JAYANAGAR',5000)
1 row created.
SQL> /
Enter value for accno: 1234605
Enter value for bname: SBI RAJAJI NAGAR
Enter value for balance: 10000
old 1: insert into account values(&accno,'&bname',&balance)
new 1: insert into account values(1234605,'SBI RAJAJI NAGAR',10000)
1 row created.
SQL> /
Enter value for accno: 1234503
Enter value for bname: SBI VIJAY NAGAR
Enter value for balance: 40000
old 1: insert into account values(&accno,'&bname',&balance)
new 1: insert into account values(1234503,'SBI VIJAY NAGAR',40000)
1 row created.
SQL> /
Enter value for accno: 1234504
Enter value for bname: SBI PD NAGAR
Enter value for balance: 4000
old 1: insert into account values(&accno,'&bname',&balance)
new 1: insert into account values(1234504,'SBI PD NAGAR',4000)
1 row created.
SQL> /
Enter value for cname: LAL KRISHNA
Enter value for cstreet: ST MKS ROAD
Enter value for ccity: BANGALORE
old 1: insert into customer values('&cname','&cstreet','&ccity')
new 1: insert into customer values('LAL KRISHNA','ST MKS ROAD','BANGALORE')
1 row created.
SQL> /
Enter value for cname: RAHUL
Enter value for cstreet: AUGSTEN ROAD
Enter value for ccity: BANGALORE
old 1: insert into customer values('&cname','&cstreet','&ccity')
new 1: insert into customer values('RAHUL','AUGSTEN ROAD','BANGALORE')
1 row created.
SQL> /
Enter value for cname: LALLU
Enter value for cstreet: V S ROAD
Enter value for ccity: BANGALORE
old 1: insert into customer values('&cname','&cstreet','&ccity')
new 1: insert into customer values('LALLU','V S ROAD','BANGALORE')
1 row created.
SQL> /
Enter value for cname: FAIZAL
Enter value for cstreet: RESEDENCY ROAD
Enter value for ccity: BANGALORE
old 1: insert into customer values('&cname','&cstreet','&ccity')
new 1: insert into customer values('FAIZAL','RESEDENCY ROAD','BANGALORE')
1 row created.
SQL> /
Enter value for cname: RAJEEV
Enter value for cstreet: DICKNSN ROAD
Enter value for ccity: BANGALORE
old 1: insert into customer values('&cname','&cstreet','&ccity')
new 1: insert into customer values('RAJEEV','DICKNSN ROAD','BANGALORE')
1 row created.
SQL> /
Enter value for cname: LAL KRISHNA
Enter value for accno: 1234603
old 1: insert into depositor values('&cname',&accno)
new 1: insert into depositor values('LAL KRISHNA',1234603)
1 row created.
SQL> /
Enter value for cname: RAHUL
Enter value for accno: 1234604
old 1: insert into depositor values('&cname',&accno)
new 1: insert into depositor values('RAHUL',1234604)
1 row created.
SQL> /
Enter value for cname: LALLU
Enter value for accno: 1234605
old 1: insert into depositor values('&cname',&accno)
new 1: insert into depositor values('LALLU',1234605)
1 row created.
SQL> /
Enter value for cname: LAL KRISHNA
Enter value for accno: 1234503
old 1: insert into depositor values('&cname',&accno)
new 1: insert into depositor values('LAL KRISHNA’,1234503)
1 row created.
SQL> /
Enter value for cname: RAJEEV
Enter value for accno: 1234504
old 1: insert into depositor values('&cname',&accno)
new 1: insert into depositor values('RAJEEV',1234504)
1 row created.
SQL> /
Enter value for loanno: 10012
Enter value for bname: SBI VIJAY NAGAR
Enter value for amount: 5000
old 1: insert into loan values(&loanno,'&bname',&amount)
new 1: insert into loan values(10012,'SBI VIJAY NAGAR',5000)
1 row created.
SQL> /
Enter value for loanno: 10013
Enter value for bname: SBI HOSAKEREHALLI
Enter value for amount: 20000
old 1: insert into loan values(&loanno,'&bname',&amount)
new 1: insert into loan values(10013,'SBI HOSAKEREHALLI',20000)
1 row created.
SQL> /
Enter value for loanno: 10014
Enter value for bname: SBI PD NAGAR
Enter value for amount: 15000
old 1: insert into loan values(&loanno,'&bname',&amount)
new 1: insert into loan values(10014,'SBI PD NAGAR',15000)
1 row created.
SQL> /
Enter value for loanno: 10015
Enter value for bname: SBI RAJAJI NAGAR
Enter value for amount: 25000
old 1: insert into loan values(&loanno,'&bname',&amount)
new 1: insert into loan values(10015,'SBI RAJAJI NAGAR',25000)
1 row created.
SQL> /
Enter value for cname: LAL KRISHNA
Enter value for loanno: 10012
old 1: insert into borrower values('&cname',&loanno)
new 1: insert into borrower values('LAL KRISHNA',10012)
1 row created.
SQL> /
Enter value for cname: RAHUL
Enter value for loanno: 10013
old 1: insert into borrower values('&cname',&loanno)
new 1: insert into borrower values('RAHUL',10013)
1 row created.
SQL> /
Enter value for cname: LALLU
Enter value for loanno: 10014
old 1: insert into borrower values('&cname',&loanno)
new 1: insert into borrower values('LALLU',10014)
1 row created.
SQL> /
Enter value for cname: FAIZAL
Enter value for loanno: 10015
old 1: insert into borrower values('&cname',&loanno)
new 1: insert into borrower values('FAIZAL',10015)
1 row created.
iii) Find all the customers who have at least two accounts at the Main branch.
SQL> select customer_name from depositor where accno in(select accno from depositor
where accno in(select accno from account where branch_name in(select branch_name from
account where branch_name='SBI VIJAY NAGAR' group by branch_name having count(*) >
1)))group by customer_name having count(*) > 1;
CUSTOMER_NAME
--------------------
LAL KRISHNA
iv) Find all the customers who have an account at all the branches located in a
specific city.
SQL> select customer_name,accno from depositor where accno in(select accno from account
where branch_name in(select branch_name from branch where branch_city='BANGALORE'));
CUSTOMER_NAME ACCNO
-------------------- ----------
KEZAR 1234602
LAL KRISHNA 1234603
RAHUL 1234604
LALLU 1234605
LAL KRISHNA 1234503
RAJEEV 1234504
v) Demonstrate how you delete all account tuples at every branch located in a
specific city.
SQL> delete from account where branch_name=(select branch_name from branch where
branch_city=’&city’);
1 row deleted.