0% found this document useful (0 votes)
15 views

Prog 1

Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

Prog 1

Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

INSURANCE DATABASE

Consider the insurance database given below..The primary keys are underlined and the data types are
specified :

PERSON(driver-id:string,name:string,address:string)

CAR(Regno:string,model:string,year:int)

ACCIDENT(Report-number:int,date:date,location:string)

OWNS(driver-id:string,regno:string)

PARTICIPATED(driver-id:string,regno:string,report-number:int,damage-amount:int)

1)create the above tables by properly specifying the primaru keys and the foreign keys
2)enter atleast five tupels for each relation
3)demonstrate how you
a)update the damage amount for the car with a specified regno in accident with report number 12 to 25000
b)add a new accident to the database
4)find the total numberof people who owned cars that were involved in accidents in 2002..
5)find the number of accidents in which cars belonging to a specific model were involved.

TABLE CREATION:
1.PERSON TABLE:
CREATE TABLE PERSON111
(
DRIVER_ID VARCHAR(3),
NAME VARCHAR(10) NOT NULL,
ADDRESS VARCHAR(20) NOT NULL,
PRIMARY KEY(DRIVER_ID)
);
2.CAR TABLE:
CREATE TABLE CAR111
(
RNO VARCHAR(5),
MODEL VARCHAR(10) NOT NULL,
YEAR INT NOT NULL,
PRIMARY KEY(RNO)
);

3.ACCIDENT TABLE:
CREATE TABLE ACCIDENT111
(
RPNO INT,
DATE1 DATE NOT NULL,
LOC VARCHAR(20) NOT NULL,
PRIMARY KEY(RPNO)
);

4.OWNS TABLE:
CREATE TABLE OWNS111
(
DRIVER_ID VARCHAR(5),
RNO VARCHAR(5),
FOREIGN KEY(DRIVER_ID) REFERENCES PERSON111(DRIVER_ID),
FOREIGN KEY(RNO) REFERENCES CAR111(RNO),
PRIMARY KEY(DRIVER_ID,RNO)
);
5.PARTICIPATED TABLE:
CREATE TABLE PARTICIPATED111
(
DRIVER_ID VARCHAR(3),
RNO VARCHAR(5),
RPNO INT,
AMOUNT INT NOT NULL,
FOREIGN KEY(DRIVER_ID) REFERENCES PERSON111(DRIVER_ID),
FOREIGN KEY(RNO) REFERENCES CAR111(RNO),
FOREIGN KEY(RPNO) REFERENCES ACCIDENT111(RPNO),
PRIMARY KEY(DRIVER_ID,RNO,RPNO)
);
TABLE FILLING:
1.INSERT TO PERSON

INSERT INTO PERSON111 VALUES


('D1','ADI','DWD');
INSERT INTO PERSON111 VALUES
('D2','RAM','HUBLI');
2.INSERT TO CAR
INSERT INTO CAR111 VALUES
('C1','FORD','2002');
INSERT INTO CAR111 VALUES
('C2','HONDA','2007');
3.INSERT TO ACCIDENT
INSERT INTO ACCIDENT111 VALUES
(1,'20-MAR-2002','DWD');
INSERT INTO ACCIDENT111 VALUES
(2,'21-MAR-2002','HUBLI');
4.INSERT TO OWNS
INSERT INTO OWNS111 VALUES
('D1','C1');
INSERT INTO OWNS111 VALUES
('D2','C2');
5.INSERT TO PARTICIPATED
INSERT INTO PARTICIPATED111 VALUES
('D1','C1',1,500);
INSERT INTO PARTICIPATED111 VALUES
('D2','C2',2,400);

TABLE CONTENTS:
PERSON TABLE
SELECT *FROM PERSON111;

DID NAME ADDRESS


--- ---------- -----------
D1 ADI DWD
D2 RAM HUBLI
D3 SHEETAL DWD
D4 NILOFFER HUBLI
D5 SANJEEV DWD
CAR TABLE
SELECT *FROM CAR111;

RNO MODEL YEAR


----- ---------- ----------
C1 FORD 2002
C2 HONDA 2007
C3 TOYOTA 2008
C4 PHANTOM 2006
C5 XTRAIL 2006

ACCIDENT TABLE
SELECT *FROM ACCIDENT111;

RPNO DATE1 LOC


---------- --------- ----------------
1 20-MAR-02 DWD
2 21-MAR-02 HUBLI
3 15-FEB-03 BANGLORE
4 15-JUN-05 MYSORE
5 20-JUN-05 HAVERI
OWNS TABLE

SELECT *FROM OWNS111;

DID RNO
----- -----
D1 C1
D2 C2
D3 C3
D4 C4
D5 C5

PARTICIPATED TABLE

SELECT *FROM PARTICIPATED111;

DID RNO RPNO AMOUNT


--- ----- ---------- ----------
D1 C1 1 2222
D2 C2 2 400
D1 C3 5 500
D2 C5 3 2300
D3 C4 4 300

QUERIES
//1.Query to update damage amount to 25000

SOLUTION:
update PARTICIPATED111 set AMOUNT=25000 where RNO='C1' and RPNO=1;

select * from participated111;

DRIVER_ID RNO RPNO AMOUNT


--- ----- --------- ---------
D1 C1 1 25000
D2 C2 2 400
D1 C3 5 500
D2 C5 3 2300
D3 C4 4 300

//2.Add a new value to accident

SOLUTION:
insert into accident111 values
(6,'14-MAY-98','Blore');

select * from accident111;

RPNO DATE1 LOC


---------- --------- ----------------
1 20-MAR-02 DWD
2 21-MAR-02 HUBLI
3 15-FEB-03 BANGLORE
4 15-JUN-05 MYSORE
5 20-JUN-05 HAVERI
6 14-MAY-98 Blore

//3.To count no. of people involved in accident

SOLUTION:
SELECT COUNT(DISTINCT P.DRIVER_ID) ACCIDENT_OWNERS FROM ACCIDENT111
A,PARTICIPATED111 P,OWNS111 O
WHERE A.RPNO=P.RPNO AND
P.DRIVER_ID=O.DRIVER_ID AND
A.DATE1 LIKE '%05';

ACCIDENT_OWNERS
---------------
2
//4.To find accidents belonging to specific model

SOLUTION:
SELECT COUNT(C.RNO) ACCIDENTS FROM CAR111 C,PARTICIPATED111 P
WHERE C.RNO=P.RNO AND
C.MODEL LIKE '%FORD';

ACCIDENTS
----------
1

You might also like