0% found this document useful (0 votes)
33 views32 pages

B.SC (M) - DBMS LAB SOLUTIONS

The document outlines the creation of a database for a library system and student details in a Computer Department. It includes SQL commands to create tables, insert records, update, delete, and query data. Key operations include managing library books and student academic records with specified fields and relationships.

Uploaded by

chunkanime123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views32 pages

B.SC (M) - DBMS LAB SOLUTIONS

The document outlines the creation of a database for a library system and student details in a Computer Department. It includes SQL commands to create tables, insert records, update, delete, and query data. Key operations include managing library books and student academic records with specified fields and relationships.

Uploaded by

chunkanime123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 32

MASTERJI DEGREE & P.

G COLLEGE
HUNTER ROAD, HANAMKONDA
B.Sc (M)-II/II DBMS LAB SOLUTIONS

1. Create a database having two tables with the specified fields, to computerize
a library system of a Delhi University College.

Library Books (Accession number, Title, Author, Department, Purchase Date, Price)

Issued Books (Accession number, Borrower)

a) Identify primary and foreign keys. Create the tables and insert at least 5 records in
each table.
b) Delete the record of book titled “Database System Concepts”.
c) Change the Department of the book titled “Discrete Maths” to “CS”.
d) List all books that belong to “CS” department.
e) List all books that belong to “CS” department and are written by author
“Navathe”.
f) List all computer (Department=”CS”) that have been issued.
g) List all books which have a price less than 500 or purchased between
“01/01/1999” and “01/01/2004”.

a) Identify primary and foreign keys. Create the tables and insert at least 5
records in each table.

SQL>CREATE TABLE LIBRARY1 (ACNO NUMBER (3) PRIMARY KEY,


TITLE VARCHAR2 (15),
AUTHOR VARCHAR2 (30),
DEPT VARCHAR2 (5),
PUR_DATE DATE,
PRICE NUMBER (10, 4));
TABLE CREATED
SQL>
SQL> create table ib(acno number(3)references library1(acno),borrower
varchar2(15));
Table created.
SQL>
SQL> insert into library1 values
(&acno,'&title','&author','&dept','&pur_date',&price);
Enter value for acno: 101
Enter value for title: oracle 11g
Enter value for author: navathe
Enter value for dept: cs
Enter value for pur_date: 02-feb-01
Enter value for price: 300
old 1: insert into library1 values
(&acno,'&title','&author','&dept','&pur_date',&price)
new 1: insert into library1 values(101,'oracle 11g','navathe','cs','02-feb-01',300)
1 row created.
SQL> /
Enter value for acno: 102
Enter value for title: dbms
Enter value for author: miller
Enter value for dept: cs
Enter value for pur_date: 12-aug-99
Enter value for price: 700
old 1: insert into library1 values (&acno,'&title','&author','&dept','&pur_date',
&price)
new 1: insert into library1 values (102,'dbms','miller','cs','12-aug-99',700)

1 row created.
SQL> /
Enter value for acno: 103
Enter value for title: quantam theory
Enter value for author: shawn
Enter value for dept: phy
Enter value for pur_date: 10-feb-99
Enter value for price: 600
old 1: insert into library1
values(&acno,'&title','&author','&dept','&pur_date',&price)
new 1: insert into library1 values(103,'quantam theory','shawn','phy','10-feb-
99',600)
1 row created.
SQL> /
Enter value for acno: 104
Enter value for title: descrete maths
Enter value for author: kenneth
Enter value for dept: maths
Enter value for pur_date: 15-jan-98
Enter value for price: 700
old 1: insert into library1
values(&acno,'&title','&author','&dept','&pur_date',&price)
new 1: insert into library1 values(104,'descrete maths','kenneth','maths','15-jan-
98',700)
1 row created.
SQL> /
Enter value for acno: 105
Enter value for title: ansic c
Enter value for author: swamy
Enter value for dept: cs
Enter value for pur_date: 10-jan-01
Enter value for price: 500
old 1: insert into library1
values(&acno,'&title','&author','&dept','&pur_date',&price)
new 1: insert into library1 values(105,'ansic c','swamy','cs','10-jan-01',500)
1 row created.
SQL> insert into ib values(&acno,'&borrower');
Enter value for acno: 101
Enter value for borrower: raju
old 1: insert into ib values(&acno,'&borrower')
new 1: insert into ib values(101,'raju')
1 row created.
SQL> /
Enter value for acno: 102
Enter value for borrower: kiran
old 1: insert into ib values(&acno,'&borrower')
new 1: insert into ib values(102,'kiran')
1 row created.
SQL> /
Enter value for acno: 103
Enter value for borrower: suresh
old 1: insert into ib values(&acno,'&borrower')
new 1: insert into ib values(103,'suresh')
1 row created.
SQL> /
Enter value for acno: 104
Enter value for borrower: mohan
old 1: insert into ib values(&acno,'&borrower')
new 1: insert into ib values(104,'mohan')
1 row created.
SQL> /
Enter value for acno: 105
Enter value for borrower: laxmi
old 1: insert into ib values(&acno,'&borrower')
new 1: insert into ib values(105,'laxmi')
1 row created.
SQL> select * from library1;
ACNO TITLE AUTHOR DEPT PUR_DATE PRICE
--------- --------------- ------------------------------ ----- --------- ---------
101 oracle 11g navathe cs 02-FEB-01 300
102 dbms miller cs 12-AUG-99 700
103 quantam theory shawn phy 10-FEB-99 600
104 descrete maths kenneth maths 15-JAN-98 700
105 ansic c swamy cs 10-JAN-01 500
SQL> select * from ib;
ACNO BORROWER
--------- ---------------
101 raju
102 kiran
103 suresh
104 mohan
105 laxmi

b) Delete the record of book titled “Database System Concepts”.

SQL> delete from ib where acno=102;


1 row deleted.
SQL> delete from library1 where title='dbms';
1 row deleted.

c) Change the Department of the book titled “Discrete Maths” to “CS”.


SQL> select * from library1;

ACNO TITLE AUTHOR EPT PUR_DATE PRICE


--------- --------------- ------------------------------ ----- --------- ---------
101 oracle 11g navathe cs 02-FEB-01 300
103 quantam theory shawn phy 10-FEB-99 600
104 descrete maths kenneth maths 15-JAN-98 700
105 ansic c swamy cs 10-JAN-01 500
SQL> update library1 set dept='cs'
2 where title ='descrete maths';
1 row updated.
SQL> select * from library1;
ACNO TITLE AUTHOR DEPT PUR_DATE
PRICE
--------- --------------- ---- ------------------------- ----- --------- ---------
101 oracle 11g navathe cs 02-FEB-01 300
103 quantam theory shawn phy 10-FEB-99 600
104 descrete maths kenneth cs 15-JAN-98 700
105 ansic c swamy cs 10-JAN-01 500

d) List all books that belong to “CS” department.


SQL> select * from library1 where dept='cs';
ACNO TITLE AUTHOR DEPT PUR_DATE PRICE
--------- --------------- ------------------------------ ----- --------- ---------
101 oracle 11g navathe cs 02-FEB-01 300
104 descrete maths kenneth cs 15-JAN-98 700
105 ansic c swamy cs 10-JAN-01 500

e) List all books that belong to “CS” department and are written by author
“Navathe”.

SQL> select * from library1 where dept='cs' and author='navathe';


ACNO TITLE AUTHOR DEPT PUR_DATE PRICE
--------- --------------- ------------------------------ ----- --------- ---------
101 oracle 11g navathe cs 02-FEB-01 300

f) List all computer (Department=”CS”) that have been issued.

SQL> select
ib.acno,ib.borrower,library1.title,library1.author,library1.dept,library1.pur_date,libr
ary1.price from ib,library1
2 where ib.acno=library1.acno;

ACNO BORROWER TITLE AUTHOR DEPT PUR_DATE PRICE


--------- --------------- --------------- ------------------------------ ----- --------- ---------
101 raju oracle 11g navathe cs 02-FEB-01 300
103 suresh quantam theory shawn phy 10-FEB-99 600
104 mohan descrete maths kenneth cs 15-JAN-98 700
105 laxmi ansic c swamy cs 10-JAN-01 500

g) List all books which have a price less than 500 or purchased between
“01/01/1999” and “01/01/2004”.

SQL> select * from library1 where price<500


and pur_date between to_date('01/01/1999','dd/mm/yyyy') and
to_date('01/01/2020' ,'dd/mm/yyyy');

ACNO TITLE AUTHOR DEPT PUR_DATE PRICE


--------- --------------- ------------------------------ ----- --------- ---------
101 oracle 11g navathe cs 02-FEB-01 300
2. Create a database having three tables to store the details of students of
Computer Department in your college.
Personal information about Student (College roll number, Name of student, Date of
birth, Address, Marks(rounded off to whole number) in percentage at 10 + 2, Phone
number)
Paper Details (Paper code, Name of the Paper)
Student’s Academic and Attendance details (College roll number, Paper code,
Attendance, Marks in home examination).

a) Identify primary and foreign keys. Create the tables and insert at least 5
records in each table.
SQL> create table std1(rno number(3)primary key,name varchar2(15),
dob date,
addr varchar2(15),
marks number(4,2),
phno number(10));
Table created.
SQL> CREATE TABLE PD(PCODE VARCHAR2(15)PRIMARY KEY,
PNAME VARCHAR2(15));
Table created.
SQL> CREATE TABLE SD(RNO NUMBER(3)REFERENCES STD1,PCODE
VARCHAR2(15)REFERENCES PD,
MARKS NUMBER(4));
Table created.
SQL> INSERT INTO STD1 VALUES
(&RNO,'&NAME','&DOB','&ADDR',&MARKS,&PHNO);
Enter value for rno: 101
Enter value for name: SRINU
Enter value for dob: 11-JUN-98
Enter value for addr: WARANGAL
Enter value for marks: 68.8
Enter value for phno: 4567890
old 1: INSERT INTO STD1 VALUES
(&RNO,'&NAME','&DOB','&ADDR',&MARKS,&PHNO)
new 1: INSERT INTO STD1 VALUES (101,'SRINU','11-JUN-
98','WARANGAL',68.8,4567890)
1 row created.

SQL>/
Enter value for rno: 102
Enter value for name: VENU
Enter value for dob: 09-JUN-99
Enter value for addr: HANAMKONDA
Enter value for marks: 89.9
Enter value for phno: 2345678
old 1: INSERT INTO STD1
VALUES(&RNO,'&NAME','&DOB','&ADDR',&MARKS,&PHNO)
new 1: INSERT INTO STD1 VALUES(102,'VENU','09-JUN-
99','HANAMKONDA',89.9,2345678)
1 row created.

SQL> /
Enter value for rno: 103
Enter value for name: KIRAN
Enter value for dob: 08-JAN-97
Enter value for addr: WARANGAL
Enter value for marks: 56.78
Enter value for phno: 987877
old 1: INSERT INTO STD1
VALUES(&RNO,'&NAME','&DOB','&ADDR',&MARKS,&PHNO)
new 1: INSERT INTO STD1 VALUES(103,'KIRAN','08-JAN-
97','WARANGAL',56.78,987877)
1 row created.

SQL> /
Enter value for rno: 104
Enter value for name: JON
Enter value for dob: 06-DEC-96
Enter value for addr: HANAMKONDA
Enter value for marks: 65
Enter value for phno: 678900
old 1: INSERT INTO STD1
VALUES(&RNO,'&NAME','&DOB','&ADDR',&MARKS,&PHNO)
new 1: INSERT INTO STD1 VALUES(104,'JON','06-DEC-
96','HANAMKONDA',65,678900)
1 row created.

SQL> /
Enter value for rno: 105
Enter value for name: PINKY
Enter value for dob: 09-AUG-95
Enter value for addr: WARANGAL
Enter value for marks: 89
Enter value for phno: 567789
old 1: INSERT INTO STD1
VALUES(&RNO,'&NAME','&DOB','&ADDR',&MARKS,&PHNO)
new 1: INSERT INTO STD1 VALUES(105,'PINKY','09-AUG-
95','WARANGAL',89,567789)
1 row created.
SQL> INSERT INTO PD VALUES('&PCODE','&PNAME');
Enter value for pcode: P1
Enter value for pname: DBMS
old 1: INSERT INTO PD VALUES('&PCODE','&PNAME')
new 1: INSERT INTO PD VALUES('P1','DBMS')
1 row created.

SQL> /
Enter value for pcode: P2
Enter value for pname: WEB
old 1: INSERT INTO PD VALUES('&PCODE','&PNAME')
new 1: INSERT INTO PD VALUES('P2','WEB')
1 row created.

SQL> /
Enter value for pcode: P3
Enter value for pname: MATHS
old 1: INSERT INTO PD VALUES('&PCODE','&PNAME')
new 1: INSERT INTO PD VALUES('P3','MATHS')
1 row created.

SQL> /
Enter value for pcode: P4
Enter value for pname: RDBMS
old 1: INSERT INTO PD VALUES('&PCODE','&PNAME')
new 1: INSERT INTO PD VALUES('P4','RDBMS')
1 row created.

SQL> /
Enter value for pcode: P5
Enter value for pname: C++
old 1: INSERT INTO PD VALUES('&PCODE','&PNAME')
new 1: INSERT INTO PD VALUES('P5','C++')
1 row created.

SQL> INSERT INTO SD VALUES(&RNO,'&PCODE',&MARKS,&ATTE);


Enter value for rno: 101
Enter value for pcode: P1
Enter value for marks: 89
Enter value for atte: 67
old 1: INSERT INTO SD VALUES(&RNO,'&PCODE',&MARKS,&ATTE)
new 1: INSERT INTO SD VALUES(101,'P1',89,67)
1 row created.

SQL> /
Enter value for rno: 102
Enter value for pcode: P2
Enter value for marks: 78
Enter value for atte: 65
old 1: INSERT INTO SD VALUES(&RNO,'&PCODE',&MARKS,&ATTE)
new 1: INSERT INTO SD VALUES(102,'P2',78,65)
1 row created.

SQL> /
Enter value for rno: 103
Enter value for pcode: P3
Enter value for marks: 90
Enter value for atte: 78
old 1: INSERT INTO SD VALUES(&RNO,'&PCODE',&MARKS,&ATTE)
new 1: INSERT INTO SD VALUES(103,'P3',90,78)
1 row created.

SQL> /
Enter value for rno: 104
Enter value for pcode: P4
Enter value for marks: 90
Enter value for atte: 55
old 1: INSERT INTO SD VALUES(&RNO,'&PCODE',&MARKS,&ATTE)
new 1: INSERT INTO SD VALUES(104,'P4',90,55)
1 row created.

SQL> /
Enter value for rno: 105
Enter value for pcode: P5
Enter value for marks: 87
Enter value for atte: 55
old 1: INSERT INTO SD VALUES(&RNO,'&PCODE',&MARKS,&ATTE)
new 1: INSERT INTO SD VALUES(105,'P5',87,55)
1 row created.
SQL> SELECT * FROM STD1;

RNO NAME DOB ADDR MARKS PHNO


--------- --------------- --------- --------------- --------- ---------
101 SRINU 11-JUN-98 WARANGAL 68.8
4567890
102 VENU 09-JUN-99 HANAMKONDA 89.9
2345678
103 KIRAN 08-JAN-97 WARANGAL 56.78 987877
104 JON 06-DEC-96 HANAMKONDA 65
678900
105 PINKY 09-AUG-95 WARANGAL 89 567789
SQL> SELECT * FROM SD;
RNO PCODE MARKS ATTE
--------- --------------- --------- ---------
101 P1 89 67
102 P2 78 65
103 P3 90 78
104 P4 90 55
105 P5 87 55

SQL> SELECT * FROM PD;


PCODE PNAME
--------------- --------------
P1 DBMS
P2 WEB
P3 MATHS
P4 RDBMS
P5 C++
b) Design a query that will return the records (from the second table) along
with the name of student from the first table, related to students who have more
than

SQL> SELECT STD1.RNO,NAME FROM STD1 WHERE RNO=(SELECT RNO


FROM SD WHERE (ATTE,MARKS) IN
2 (SELECT ATTE,MARKS FROM SD WHERE ATTE>=75 AND
MARKS>60));
RNO NAME
--------- ---------------
103 KIRAN
c) List all students who live in “Delhi” and have marks greater than 60 in paper

SQL> SELECT NAME FROM STD1 WHERE ADDR='WARANGAL' AND RNO


IN(SELECT RNO FROM SD WHERE MARKS>60 AND PCODE='P1');

NAME
---------------
SRINU

d) Find the total attendance and total marks obtained by each student
SQL> SELECT RNO,AVG(ATTE),SUM(MARKS) FROM SD GROUP BY
RNO;

RNO AVG(ATTE) SUM(MARKS)


--------- --------- ----------
101 67 89
102 65 78
103 78 90
104 55 90
105 55 87
e) List the name of student who has got the highest marks in paper 2.
SQL> SELECT RNO,NAME FROM STD1 WHERE RNO IN (SELECT RNO
FROM SDWHERE MARKS IN(SELECT MAX(MARKS) FROM SD WHERE
PCODE='P2'));

RNO NAME
--------- ---------------
102 VENU
3. Create the following tables and answer the queries given below:
Customer (CustID, email, Name, Phone, ReferrerID)
Bicycle (BicycleID, DatePurchased, Color, CustID, ModelNo)
BicycleModel (ModelNo, Manufacturer, Style)
Service (StartDate, BicycleID, EndDate)
a) Identify primary and foreign keys. Create the tables and insert at least 5
records in each table.
SQL> CREATE TABLE C
(CID NUMBER(5)PRIMARY KEY,
EMAIL VARCHAR2(10),
NAME VARCHAR2(5),
PHONE NUMBER(8),
RFID VARCHAR2(6));
Table created.
SQL> CREATE TABLE BM (MNO VARCHAR2(6)PRIMARY KEY,MFT
VARCHAR2(6),STYLE VARCHAR2(8));
Table created.
SQL> CREATE TABLE BM (MNO VARCHAR2(6)PRIMARY KEY,MFT
VARCHAR2(6),STYLE VARCHAR2(8));
Table created.
SQL> CREATE TABLE B (BID NUMBER(4)PRIMARY KEY,DOP
DATE,COLOR VARCHAR2(8),
2 CID NUMBER(5)REFERENCES C,MNO VARCHAR2(6)REFERENCES
BM);
Table created.
SQL> CREATE TABLE SR (SDATE DATE,BID NUMBER(4)REFERENCES B,
2 EDATE DATE);
Table created.
SQL> INSERT INTO C
VALUES(&CID,'&EMAIL','&NAME',&PHONE,'&RFID');
Enter value for cid: 101
Enter value for email: [email protected]
Enter value for name: C1
Enter value for phone: 34567
Enter value for rfid: 11227
old 1: INSERT INTO C
VALUES(&CID,'&EMAIL','&NAME',&PHONE,'&RFID')
new 1: INSERT INTO C VALUES(101,'[email protected]','C1',34567,'11227')
1 row created.
SQL> /
Enter value for cid: 102
Enter value for email: [email protected]
Enter value for name: C2
Enter value for phone: 67890
Enter value for rfid: 12345
old 1: INSERT INTO C
VALUES(&CID,'&EMAIL','&NAME',&PHONE,'&RFID')
new 1: INSERT INTO C VALUES(102,'[email protected]','C2',67890,'12345')
1 row created.
SQL> /
Enter value for cid: 103
Enter value for email: [email protected]
Enter value for name: C3
Enter value for phone: 77889
Enter value for rfid: 6789
old 1: INSERT INTO C
VALUES(&CID,'&EMAIL','&NAME',&PHONE,'&RFID')
new 1: INSERT INTO C VALUES(103,'[email protected]','C3',77889,'6789')
1 row created.
SQL> /
Enter value for cid: 104
Enter value for email: [email protected]
Enter value for name: C4
Enter value for phone: 67890
Enter value for rfid: 9999
old 1: INSERT INTO C
VALUES(&CID,'&EMAIL','&NAME',&PHONE,'&RFID')
new 1: INSERT INTO C VALUES(104,'[email protected]','C4',67890,'9999')
1 row created.
SQL> /
Enter value for cid: 105
Enter value for email: [email protected]
Enter value for name: C5
Enter value for phone: 98855
Enter value for rfid: 9873
old 1: INSERT INTO C
VALUES(&CID,'&EMAIL','&NAME',&PHONE,'&RFID')
new 1: INSERT INTO C VALUES(105,'[email protected]','C5',98855,'9873')
1 row created.
SQL> INSERT INTO BM VALUES('&MNO','&MFT','&STYLE');
Enter value for mno: H123
Enter value for mft: HERO
Enter value for style: TOURING
old 1: INSERT INTO BM VALUES('&MNO','&MFT','&STYLE')
new 1: INSERT INTO BM VALUES('H123','HERO','TOURING')
1 row created.
SQL> /
Enter value for mno: H345
Enter value for mft: HONDA
Enter value for style: HYBRID
old 1: INSERT INTO BM VALUES('&MNO','&MFT','&STYLE')
new 1: INSERT INTO BM VALUES('H345','HONDA','HYBRID')
1 row created.
SQL> /
Enter value for mno: A123
Enter value for mft: ATLAS
Enter value for style: SUPER
old 1: INSERT INTO BM VALUES('&MNO','&MFT','&STYLE')
new 1: INSERT INTO BM VALUES('A123','ATLAS','SUPER')
1 row created.
SQL> /
Enter value for mno: H23
Enter value for mft: HONDA
Enter value for style: SUPER
old 1: INSERT INTO BM VALUES('&MNO','&MFT','&STYLE')
new 1: INSERT INTO BM VALUES('H23','HONDA','SUPER')
1 row created.
SQL> /
Enter value for mno: H90
Enter value for mft: HERO
Enter value for style: LADY
old 1: INSERT INTO BM VALUES('&MNO','&MFT','&STYLE')
new 1: INSERT INTO BM VALUES('H90','HERO','LADY')
1 row created.
SQL> INSERT INTO B VALUES(&BID,'&DOP','&COLOR',&CID,'&MNO');
Enter value for bid: 111
Enter value for dop: 20-APR-15
Enter value for color: GREEN
Enter value for cid: 101
Enter value for mno: H123
old 1: INSERT INTO B VALUES(&BID,'&DOP','&COLOR',&CID,'&MNO')
new 1: INSERT INTO B VALUES(111,'20-APR-15','GREEN',101,'H123')
1 row created.
SQL> /
Enter value for bid: 112
Enter value for dop: 11-MAR-14
Enter value for color: BLUE
Enter value for cid: 103
Enter value for mno: H345
old 1: INSERT INTO B VALUES(&BID,'&DOP','&COLOR',&CID,'&MNO')
new 1: INSERT INTO B VALUES(112,'11-MAR-14','BLUE',103,'H345')
1 row created.
SQL> /
Enter value for bid: 113
Enter value for dop: 10-JUN-15
Enter value for color: RED
Enter value for cid: 102
Enter value for mno: A123
old 1: INSERT INTO B VALUES(&BID,'&DOP','&COLOR',&CID,'&MNO')
new 1: INSERT INTO B VALUES(113,'10-JUN-15','RED',102,'A123')
1 row created.
SQL> /
Enter value for bid: 114
Enter value for dop: 21-AUG-15
Enter value for color: PINK
Enter value for cid: 105
Enter value for mno: H23
old 1: INSERT INTO B VALUES(&BID,'&DOP','&COLOR',&CID,'&MNO')
new 1: INSERT INTO B VALUES(114,'21-AUG-15','PINK',105,'H23')
1 row created.
SQL> /
Enter value for bid: 115
Enter value for dop: 10-AUG-16
Enter value for color: RED
Enter value for cid: 104
Enter value for mno: H90
old 1: INSERT INTO B VALUES(&BID,'&DOP','&COLOR',&CID,'&MNO')
new 1: INSERT INTO B VALUES(115,'10-AUG-16','RED',104,'H90')
1 row created.
SQL> INSERT INTO SR VALUES('&SDATE',&BID,'&EDATE');
Enter value for sdate: 12-JUN-16
Enter value for bid: 112
Enter value for edate: 13-SEP-16
old 1: INSERT INTO SR VALUES('&SDATE',&BID,'&EDATE')
new 1: INSERT INTO SR VALUES('12-JUN-16',112,'13-SEP-16')
SQL> /
Enter value for sdate: 10-MAR-16
Enter value for bid: 111
Enter value for edate: 18-OCT-16
old 1: INSERT INTO SR VALUES('&SDATE',&BID,'&EDATE')
new 1: INSERT INTO SR VALUES('10-MAR-16',111,'18-OCT-16')
1 row created.
SQL> /
Enter value for sdate: 22-JAN-17
Enter value for bid: 111
Enter value for edate: 21-DEC-17
old 1: INSERT INTO SR VALUES('&SDATE',&BID,'&EDATE')
new 1: INSERT INTO SR VALUES('22-JAN-17',111,'21-DEC-17')
1 row created.
SQL> /
Enter value for sdate: 10-DEC-16
Enter value for bid: 113
Enter value for edate: 15-JUN-17
old 1: INSERT INTO SR VALUES('&SDATE',&BID,'&EDATE')
new 1: INSERT INTO SR VALUES('10-DEC-16',113,'15-JUN-17')
1 row created.
SQL> /
Enter value for sdate: 11-JAN-17
Enter value for bid: 114
Enter value for edate: 20-JUL-17
old 1: INSERT INTO SR VALUES('&SDATE',&BID,'&EDATE')
new 1: INSERT INTO SR VALUES('11-JAN-17',114,'20-JUL-17')
1 row created.
SQL> SELECT * FROM B;
BID DOP COLOR CID MNO
--------- --------- -------- --------- ------
111 20-APR-15 GREEN 101 H123
112 11-MAR-14 BLUE 103 H345
113 10-JUN-15 RED 102 A123
114 21-AUG-15 PINK 105 H23
115 10-AUG-16 RED 104 H90
SQL> SELECT * FROM C;
CID EMAIL NAME PHONE RFID
--------- ---------- ----- --------- ------
101 [email protected] C1 34567 11227
102 [email protected] C2 67890 12345
103 [email protected] C3 77889 6789
104 [email protected] C4 67890 9999
105 [email protected] C5 98855 9873
SQL> SELECT * FROM BM;
MNO MFT STYLE
------ ------ --------
H123 HERO TOURING
H345 HONDA HYBRID
A123 ATLAS SUPER
H23 HONDA SUPER
H90 HERO LADY
SQL> SELECT * FROM SR;
SDATE BID EDATE
--------- --------- ---------
12-JUN-16 112 13-SEP-16
10-MAR-16 111 18-OCT-16
22-JAN-17 111 21-DEC-17
10-DEC-16 113 15-JUN-17
11-JAN-17 114 20-JUL-17

b) List all the customers who have the bicycles manufactured by manufacturer
“Honda”.
SQL> SELECT C.CID,NAME FROM C,B,BM
2 WHERE C.CID=B.CID AND B.MNO=BM.MNO AND MFT='HONDA';
CID NAME
--------- -----
103 C3
105 C5

c) List the bicycles purchased by the customers who have been referred by
customer “C1”.
SQL> SELECT BID,COLOR,B.MNO,MFT,C.CID,C.RFID
2 FROM C,B,BM WHERE B.CID=C.CID AND B.MNO=BM.MNO AND
C.RFID='C1';

no rows selected

d) List the manufacturer of red colored bicycles.


SQL> SELECT COLOR,MFT FROM B,BM WHERE B.MNO=BM.MNO
AND COLOR='RED';

COLOR MFT
-------- ------
RED ATLAS
RED HERO

e) List the models of the bicycles given for service.


SQL> SELECT SR.BID,BM.MNO,MFT FROM SR,B,BM WHERE
SR.BID=B.BID AND B.MNO=BM.MNO;

BID MNO MFT


--------- ------ ------
112 H345 HONDA
111 H123 HERO
111 H123 HERO
113 A123 ATLAS
114 H23 HONDA
4. Create the following tables, enter at least 5 records in each table
EMPLOYEE ( Person_Name, Street, City )
WORKS ( Person_Name, Company_Name, Salary )
COMPANY ( Company_Name, City )
MANAGES ( Person_Name, Manager_Name )

SQL> create table employee(pname varchar2(15)primary key,street


varchar2(15),city varchar2(15));
Table created.

SQL> create table company(cname varchar2(15)primary key,city varchar2(15));


Table created.

SQL> create table works(pname varchar2(15)references employee,cname


varchar2(15)references company,
2 salary number(5));
Table created.

SQL>create table manages(pname varchar2(15)references employee,manager


varchar2(15))
Table created.

SQL> insert into employee values('&pname','&street','&city');


Enter value for pname: RAJU
Enter value for street: STROAD
Enter value for city: WARANGAL
old 1: insert into employee values('&pname','&street','&city')
new 1: insert into employee values('RAJU','STROAD','WARANGAL')
1 row created.

SQL> /
Enter value for pname: RAVI
Enter value for street: JPNROAD
Enter value for city: WARANGAL
old 1: insert into employee values('&pname','&street','&city')
new 1: insert into employee values('RAVI','JPNROAD','WARANGAL')
1 row created.

SQL> /
Enter value for pname: KIRAN
Enter value for street: NGOSCOLONY
Enter value for city: HANAMKONDA
old 1: insert into employee values('&pname','&street','&city')
new 1: insert into employee
values('KIRAN','NGOSCOLONY','HANAMKONDA')
1 row created.
SQL> /
Enter value for pname: GOPI
Enter value for street: TAILORSTREET
Enter value for city: HANAMKONDA
old 1: insert into employee values('&pname','&street','&city')
new 1: insert into employee values('GOPI','TAILORSTREET','HANAMKONDA')
1 row created.

SQL> /
Enter value for pname: JONSMITH
Enter value for street: WADEPALLY
Enter value for city: HANAMKONDA
old 1: insert into employee values('&pname','&street','&city')
new 1: insert into employee
values('JONSMITH','WADEPALLY','HANAMKONDA')
1 row created.

SQL>INSERT INTO COMPANY VALUES('&CNAME','&CITY')


Enter value for cname: INDIAN BANK
Enter value for city: WARANGAL
old 1: INSERT INTO COMPANY VALUES('&CNAME','&CITY')
new 1: INSERT INTO COMPANY VALUES('INDIAN BANK','WARANGAL')
1 row created.

SQL> /
Enter value for cname: YES BANK
Enter value for city: WARANGAL
old 1: INSERT INTO COMPANY VALUES('&CNAME','&CITY')
new 1: INSERT INTO COMPANY VALUES('YES BANK','WARANGAL')
1 row created.

SQL> /
Enter value for cname: JIO
Enter value for city: HANAMKONDA
old 1: INSERT INTO COMPANY VALUES('&CNAME','&CITY')
new 1: INSERT INTO COMPANY VALUES('JIO','HANAMKONDA')
1 row created.

SQL> /
Enter value for cname: HDFC BANK
Enter value for city: HANAMKONDA
old 1: INSERT INTO COMPANY VALUES('&CNAME','&CITY')
new 1: INSERT INTO COMPANY VALUES('HDFC BANK','HANAMKONDA')
1 row created.

SQL> INSERT INTO WORKS VALUES('&PNAME','&CNAME',&SALARY);


Enter value for pname: RAJU
Enter value for cname: INDIAN BANK
Enter value for salary: 15000
old 1: INSERT INTO WORKS VALUES('&PNAME','&CNAME',&SALARY)
new 1: INSERT INTO WORKS VALUES('RAJU','INDIAN BANK',15000)
1 row created.

SQL> /
Enter value for pname: RAVI
Enter value for cname: YES BANK
Enter value for salary: 20000
old 1: INSERT INTO WORKS VALUES('&PNAME','&CNAME',&SALARY)
new 1: INSERT INTO WORKS VALUES('RAVI','YES BANK',20000)
1 row created.

SQL> /
Enter value for pname: GOPI
Enter value for cname: JIO
Enter value for salary: 18000
old 1: INSERT INTO WORKS VALUES('&PNAME','&CNAME',&SALARY)
new 1: INSERT INTO WORKS VALUES('GOPI','JIO',18000)
1 row created.

SQL> /
Enter value for pname: GOPI
Enter value for cname: HDFC BANK
Enter value for salary: 25000
old 1: INSERT INTO WORKS VALUES('&PNAME','&CNAME',&SALARY)
new 1: INSERT INTO WORKS VALUES('GOPI','HDFC BANK',25000)
1 row created.

SQL> /
Enter value for pname: JONSMITH
Enter value for cname: HDFC BANK
Enter value for salary: 25000
old 1: INSERT INTO WORKS VALUES('&PNAME','&CNAME',&SALARY)
new 1: INSERT INTO WORKS VALUES('JONSMITH','HDFC BANK',25000)
1 row created.

SQL> INSERT INTO MANAGES VALUES('&PNAME','&MANAGER');


Enter value for pname: RAJU
Enter value for manager: MOHAN
old 1: INSERT INTO MANAGES VALUES('&PNAME','&MANAGER')
new 1: INSERT INTO MANAGES VALUES('RAJU','MOHAN')
1 row created.

SQL> /
Enter value for pname: RAVI
Enter value for manager: VENU
old 1: INSERT INTO MANAGES VALUES('&PNAME','&MANAGER')
new 1: INSERT INTO MANAGES VALUES('RAVI','VENU')
1 row created.

SQL> /
Enter value for pname: GOPI
Enter value for manager: DEVENDER
old 1: INSERT INTO MANAGES VALUES('&PNAME','&MANAGER')
new 1: INSERT INTO MANAGES VALUES('GOPI','DEVENDER')
1 row created.

SQL> /
Enter value for pname: JONSMITH
Enter value for manager: PRAVEEN
old 1: INSERT INTO MANAGES VALUES('&PNAME','&MANAGER')
new 1: INSERT INTO MANAGES VALUES('JONSMITH','PRAVEEN')
1 row created.

SQL> SELECT * FROM EMPLOYEE;


PNAME STREET CITY
--------------- --------------- --------------
RAJU STROAD WARANGAL
RAVI JPNROAD WARANGAL
KIRAN NGOSCOLONY HANAMKONDA
GOPI TAILORSTREET HANAMKONDA
JONSMITH WADEPALLY HANAMKONDA

SQL> SELECT * FROM COMPANY;

CNAME CITY
--------------- ---------------
INDIAN BANK WARANGAL
YES BANK WARANGAL
JIO HANAMKONDA
HDFC BANK HANAMKONDA
SQL> SELECT * FROM WORKS;
PNAME CNAME SALARY
--------------- --------------- ---------
RAJU INDIAN BANK 15000
RAVI YES BANK 20000
GOPI JIO 18000
GOPI HDFC BANK 25000
JONSMITH HDFC BANK 25000
SQL> SELECT * FROM MANAGES;
PNAME MANAGER
--------------- ---------------
RAJU MOHAN
RAVI VENU
GOPI DEVENDER
JONSMITH PRAVEEN

b) Alter table employee, add a column “email” of type varchar(20).


SQL> ALTER TABLE EMPLOYEE ADD(EMAIL VARCHAR2(20));

Table altered.

c) Find the name of all managers who work for both Samba Bank and NCB
Bank.
SQL> SELECT MANAGER,W.PNAME,W.CNAME FROM MANAGES
M,WORKS W
2 WHERE W.PNAME=M.PNAME AND W.CNAME IN('INDIAN BANK','YES
BANK');
MANAGER PNAME CNAME
--------------- --------------- ---------------
MOHAN RAJU INDIAN BANK
VENU RAVI YES BANK

d) Find the names, street address and cities of residence and salary of all
employees who work for “Samba Bank” and earn more than $10,000.

SQL> SELECT EMPLOYEE.PNAME,EMPLOYEE.STREET,EMPLOYEE.CITY


FROM EMPLOYEE,
2 WORKS WHERE EMPLOYEE.PNAME=WORKS.PNAME AND
3 CNAME='YES BANK' AND SALARY>10000;
PNAME STREET CITY
--------------- --------------- ---------------
RAVI JPNROAD WARANGAL
5) Create the following tables, enter at least 5 records in each table and answer
the queries given below

Suppliers (SNo, Sname, Status, SCity)


Parts (PNo, Pname, Colour, Weight, City)
Project (JNo, Jname, Jcity)
Shipment (Sno, Pno, Jno, Qunatity)

a) Identify primary and foreign keys.


b) Get supplier numbers for suppliers in Paris with status>20.
c) Get suppliers details for suppliers who supply part P2. Display the supplier
list in increasing order of supplier numbers.
d) Get suppliers names for suppliers who do not supply part P2.
e) For each shipment get full shipment details, including total shipment
weights.
f) Get all the shipments where the quantity is in the range 300 to 750
inclusive.
g) Get part nos. for parts that either weigh more than 16 pounds or are
supplied by suppliers S2, or both.
h) Get the names of cities that store more than five red parts.
i) Get full details of parts supplied by a supplier in Delhi.
j) Get part numbers for part supplied by a supplier in Allahabad to a project in
Chennai.
k) Get the total number of project supplied by a supplier (say, S1).
l) Get the total quantity of a part (say, P1) supplied by a supplier (say, S1).

SQL> create table suppliers(sno number(3) primary key,sname char(7),status


number(5),scity char(10));

Table created.

insert into suppliers values(&sno,'&sname',&status,'&scity');


Enter value for sno: 1
Enter value for sname: smith
Enter value for status: 20
Enter value for scity: london
old 1: insert into suppliers values(&sno,'&sname',&status,'&scity')
new 1: insert into suppliers values(1,'smith',20,'london')

1 row created.

SQL> /
Enter value for sno: 2
Enter value for sname: jones
Enter value for status: 10
Enter value for scity: paris
old 1: insert into suppliers values(&sno,'&sname',&status,'&scity')
new 1: insert into suppliers values(2,'jones',10,'paris')

1 row created.

SQL> /
Enter value for sno: 3
Enter value for sname: blake
Enter value for status: 30
Enter value for scity: paris
old 1: insert into suppliers values(&sno,'&sname',&status,'&scity')
new 1: insert into suppliers values(3,'blake',30,'paris')

1 row created.

SQL> /
Enter value for sno: 4
Enter value for sname: clark
Enter value for status: 20
Enter value for scity: london
old 1: insert into suppliers values(&sno,'&sname',&status,'&scity')
new 1: insert into suppliers values(4,'clark',20,'london')

1 row created.

SQL> /
Enter value for sno: 5
Enter value for sname: adams
Enter value for status: 30
Enter value for scity: singapore
old 1: insert into suppliers values(&sno,'&sname',&status,'&scity')
new 1: insert into suppliers values(5,'adams',30,'singapore')

1 row created.

SQL> select * from suppliers;

SNO SNAME STATUS SCITY


---------- ------- ---------- ----------
1 smith 20 london
2 jones 10 paris
3 blake 30 paris
4 clark 20 london
5 adams 30 singapore
SQL> create table parts(pno number(3) primary key,pname char(7),color
char(6),weight number(3),
2 city char(10));

Table created.

SQL> insert into parts values(&pno,'&pname','&color',&weight,'&city');


Enter value for pno: 11
Enter value for pname: nuts
Enter value for color: red
Enter value for weight: 12
Enter value for city: london
old 1: insert into parts values(&pno,'&pname','&color',&weight,'&city')
new 1: insert into parts values(11,'nuts','red',12,'london')

1 row created.

SQL> /
Enter value for pno: 22
Enter value for pname: bolts
Enter value for color: green
Enter value for weight: 17
Enter value for city: paris
old 1: insert into parts values(&pno,'&pname','&color',&weight,'&city')
new 1: insert into parts values(22,'bolts','green',17,'paris')

1 row created.

SQL> /
Enter value for pno: 33
Enter value for pname: screw
Enter value for color: blue
Enter value for weight: 17
Enter value for city: rome
old 1: insert into parts values(&pno,'&pname','&color',&weight,'&city')
new 1: insert into parts values(33,'screw','blue',17,'rome')

1 row created.

SQL> /
Enter value for pno: 44
Enter value for pname: crew
Enter value for color: red
Enter value for weight: 14
Enter value for city: london
old 1: insert into parts values(&pno,'&pname','&color',&weight,'&city')
new 1: insert into parts values(44,'crew','red',14,'london')
1 row created.

SQL> /
Enter value for pno: 55
Enter value for pname: cam
Enter value for color: blue
Enter value for weight: 12
Enter value for city: paris
old 1: insert into parts values(&pno,'&pname','&color',&weight,'&city')
new 1: insert into parts values(55,'cam','blue',12,'paris')

1 row created.

SQL> select * from parts;

PNO PNAME COLOR WEIGHT CITY


---------- ------- ------ ---------- ----------
11 nuts red 12 london
22 bolts green 17 paris
33 screw blue 17 rome
44 crew red 14 london
55 cam blue 12 paris

SQL> create table project(jno number(3) primary key,jname char(7),jcity char(6));

Table created.

SQL> insert into project values(&jno,'&jname','&jcity');


Enter value for jno: 111
Enter value for jname: sorter
Enter value for jcity: paris
old 1: insert into project values(&jno,'&jname','&jcity')
new 1: insert into project values(111,'sorter','paris')

1 row created.

SQL> /
Enter value for jno: 222
Enter value for jname: display
Enter value for jcity: rome
old 1: insert into project values(&jno,'&jname','&jcity')
new 1: insert into project values(222,'display','rome')

1 row created.

SQL> /
Enter value for jno: 333
Enter value for jname: oce
Enter value for jcity: athens
old 1: insert into project values(&jno,'&jname','&jcity')
new 1: insert into project values(333,'oce','athens')

1 row created.

SQL> /
Enter value for jno: 444
Enter value for jname: console
Enter value for jcity: athens
old 1: insert into project values(&jno,'&jname','&jcity')
new 1: insert into project values(444,'console','athens')

1 row created.

SQL> /
Enter value for jno: 555
Enter value for jname: raid
Enter value for jcity: london
old 1: insert into project values(&jno,'&jname','&jcity')
new 1: insert into project values(555,'raid','london')

1 row created.

SQL> select * from project;

JNO JNAME JCITY


---------- ------- ------
111 sorter paris
222 display rome
333 oce athens
444 console athens
555 raid london

create table shipment(sno references suppliers(sno),


2 pno references parts(pno),
3 jno references project(jno),
4 quantity number(5));

insert into shipment values(&sno,&pno,&jno,'&quantity');


Enter value for sno: 1
Enter value for pno: 11
Enter value for jno: 111
Enter value for quantity: 200
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(1,11,111,'200')
1 row created.

SQL> /
Enter value for sno: 1
Enter value for pno: 11
Enter value for jno: 444
Enter value for quantity: 700
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(1,11,444,'700')

1 row created.

SQL> /
Enter value for sno: 2
Enter value for pno: 33
Enter value for jno: 111
Enter value for quantity: 400
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(2,33,111,'400')

1 row created.

SQL> /
Enter value for sno: 2
Enter value for pno: 33
Enter value for jno: 222
Enter value for quantity: 200
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(2,33,222,'200')

1 row created.

SQL> /
Enter value for sno: 2
Enter value for pno: 33
Enter value for jno: 444
Enter value for quantity: 500
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(2,33,444,'500')

1 row created.

SQL> /
Enter value for sno: 2
Enter value for pno: 33
Enter value for jno: 555
Enter value for quantity: 600
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(2,33,555,'600')

1 row created.
SQL> /
Enter value for sno: 2
Enter value for pno: 33
Enter value for jno: 222
Enter value for quantity: 400
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(2,33,222,'400')

1 row created.

SQL> /
Enter value for sno: 5
Enter value for pno: 22
Enter value for jno: 222
Enter value for quantity: 200
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(5,22,222,'200')

1 row created.

SQL> /
Enter value for sno: 5
Enter value for pno: 22
Enter value for jno: 444
Enter value for quantity: 100
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(5,22,444,'100')

1 row created.

SQL> /
Enter value for sno: 5
Enter value for pno: 55
Enter value for jno: 555
Enter value for quantity: 500
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(5,55,555,'500')

1 row created.

SQL> /
Enter value for sno: 5
Enter value for pno: 11
Enter value for jno: 444
Enter value for quantity: 100
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(5,11,444,'100')

1 row created.

SQL> /
Enter value for sno: 5
Enter value for pno: 44
Enter value for jno: 444
Enter value for quantity: 750
old 1: insert into shipment values(&sno,&pno,&jno,'&quantity')
new 1: insert into shipment values(5,44,444,'750')

1 row created.

SQL> select * from shipment;

SNO PNO JNO QUANTITY


---------- ---------- ---------- ----------
1 11 111 200
1 11 444 700
2 33 111 400
2 33 222 200
2 33 444 500
2 33 555 600
2 33 222 400
5 22 222 200
5 22 444 100
5 55 555 500
5 11 444 100

SNO PNO JNO QUANTITY


---------- ---------- ---------- ----------
5 44 444 750

12 rows selected.

b)Get supplier numbers for suppliers in paris with status>20.

SQL> select suppliers.* from suppliers where suppliers.scity='paris' and


suppliers.status>20;

SNO SNAME STATUS SCITY


---------- ------- ---------- ----------
3 blake 30 paris
c)Get suppliers details for suppliers who supply part 22.Display the supplier list
in increasing order of supplier numbers.

SQL> select * from suppliers, shipment where suppliers.sno=shipment.sno and


shipment.pno=22 order by suppliers.sno;

SNO SNAME STATUS SCITY SNO PNO JNO QUANTITY

---------- ------- ---------- ---------- ---------- ---------- ---------- ----------


5 adams 30 athens 5 22 444 100

5 adams 30 athens 5 22 222 200

d)Get suppliers names for suppliers who do not supply part P2.

SQL> select distinct suppliers.sname from suppliers where suppliers.sno not in


(select shipment.sno from shipment where shipment.pno=22);

SNAME
-------
smith
clark
jones
blake

e)For each shipment get full shipment details,including total shipment weights.

SQL> select sno,sum(quantity) from shipment group by sno;

SNO SUM(QUANTITY)
---------- -------------
1 900
2 2100
5 1650

f)Get all the shipments where the quantity is in the range 300 to 750 inclusive

SQL> select shipment.* from shipment where shipment.quantity>=300


2 and shipment.quantity<=750;

SNO PNO JNO QUANTITY


---------- ---------- ---------- ----------
1 11 444 700
2 33 111 400
2 33 444 500
2 33 555 600
2 33 222 400
5 55 555 500
5 44 444 750

7 rows selected.
g) get part nos for parts that either weigh more than 16 pounds or are supplied
by suppliers 2 or both

select distinct parts.* from parts,shipment where parts.pno=shipment.pno and


parts.weight>=16;

PNO PNAME COLOR WEIGHT CITY


---------- ------- ------ ---------- ----------
33 screw blue 17 rome
22 bolts green 17 paris

i)Get full Details of parts supplied by a supplier in london


select distinct suppliers.*,parts.* from suppliers,parts where parts.city='london' and
suppliers.scity='london';

SNO SNAME STATUS SCITY PNO PNAME COLOR WEIGHT CITY


---------- ------- ---------- ---------- ---------- ------- ------ ---------- ----------
4 clark 20 london 44 crew red 14 london

4 clark 20 london 11 nuts red 12 london

1 smith 20 london 11 nuts red 12 london

SNO SNAME STATUS SCITY PNO PNAME COLOR WEIGHT CITY


---------- ------- ---------- ---------- ---------- ------- ------ ---------- ----------
1 smith 20 london 44 crew red 14 london

k)Get the total number of project supplied by a supplier(say,S1).

select count(shipment.jno) from shipment,project where shipment.jno=project.jno


and
2 shipment.sno=1;

COUNT(SHIPMENT.JNO)
-------------------
2
l)Get the total quantity of a part (say,11)supplied by a supplier(say,1).

SQL> select count(quantity) from shipment where shipment.sno=1 and


shipment.pno=11;

COUNT(QUANTITY)
---------------
2

You might also like