You are on page 1of 12

PRACTICAL NO 1

Aim: To apply insertion, deletion, modification, database operation and queries on


the table

CREATING A TABLE:
SQL> create table stud
2 (rollno varchar(20) primary key,name varchar(20),age varchar(20));

Table created.

SQL> desc stud;


Name Null? Type
----------------------------------------- --------
----------------------
ROLLNO NOT NULL VARCHAR2(20)
NAME VARCHAR2(20)
AGE VARCHAR2(20)

ADD A RECORD IN DATABASE:

SQL> insert into stud values(&rollno,&name,&age);


Enter value for rollno: '1'
Enter value for name: 'Aman'
Enter value for age: '21'
old 1: insert into stud values(&rollno,&name,&age)
new 1: insert into stud values('1','Aman','21')

1 row created.

SQL> /
Enter value for rollno: '2'
Enter value for name: 'Suman'
Enter value for age: '22'
old 1: insert into stud values(&rollno,&name,&age)
new 1: insert into stud values('2','Suman','22')

1 row created.

SQL> /
Enter value for rollno: '3'
Enter value for name: 'Rajat'
Enter value for age: '23'
old 1: insert into stud values(&rollno,&name,&age)
new 1: insert into stud values('3','Rajat','23')

1 row created.

VIEWING DATA IN TABLE:


SQL> select * from stud;

ROLLNO NAME AGE


-------------------- -------------------- --------------------
1 Aman 21
2 Suman 22
3 Rajat 23
1
UPDATING TABLE:
SQL> update stud set age='24' where rollno=3;

1 row updated.

SQL> select * from stud;

ROLLNO NAME AGE


-------------------- -------------------- --------------------
1 Aman 21
2 Suman 22
3 Rajat 24

RENAMING TABLE:
SQL> rename stud to student;

Table renamed.

ADDING NEW COLUMN:

SQL> alter table student add(phn_no varchar(10));

Table altered.

SQL> desc student;


Name Null? Type
----------------------------------------- --------
----------------------
ROLLNO NOT NULL VARCHAR2(20)
NAME VARCHAR2(20)
AGE VARCHAR2(20)
PHN_NO VARCHAR2(10)

MODIFYING EXISTING COLUMNS:


SQL> alter table student modify(age varchar(5));

Table altered.

SQL> desc student;


Name Null? Type
----------------------------------------- --------
----------------------
ROLLNO NOT NULL VARCHAR2(20)
NAME VARCHAR2(20)
AGE VARCHAR2(5)
PHN_NO VARCHAR2(10)

VIEWING SELECTED ROW AND SELECTED COLUMNS:


SQL> select rollno from student where age<23;

ROLLNO
--------------------
1
2

2
SQL> select name from student where age between 21 and 25;

NAME
--------------------
Aman
Suman
Rajat

LIST THE RECORDS IN ASCENDING ORDER:


SQL> select * from student order by name desc;

ROLLNO NAME AGE PHN_NO


-------------------- -------------------- ----- ----------
3 Rajat 24
2 Suman 22
1 Aman 21

SQL> select * from student order by name desc;

ROLLNO NAME AGE PHN_NO


-------------------- -------------------- ----- ---------
3 Rajat 24
2 Suman 22
1 Aman 21

DELETE A RECORD IN DATABASE:


SQL> delete from student where age =21;

1 row deleted.

SQL> select * from student;

ROLLNO NAME AGE PHN_NO


-------------------- -------------------- ----- ---------
2 Suman 22
3 Rajat 24

DROP TABLE:
SQL> drop table student;

Table dropped.

SQL> desc student;


ERROR:
ORA-04043: object student does not exist

3
PRACTICAL NO 2

Aim: Create a view to display details of employees working on more than one
project
SQL> create table emp1 (empno varchar(15),ename varchar(26),sal
varchar(24),no_of_proj varchar(10),proj_name varchar(20),proj_loc
varchar(10));

Table created.

SQL> desc emp1;


Name Null? Type
----------------------------------------- --------
----------------------
EMPNO VARCHAR2(15)
ENAME VARCHAR2(26)
SAL VARCHAR2(24)
NO_OF_PROJ VARCHAR2(10)
PROJ_NAME VARCHAR2(20)
PROJ_LOC VARCHAR2(10)

SQL> select * from emp1;

no rows selected

SQL> insert into emp1


values(&empno,&ename,&sal,&no_of_proj,&proj_name,&proj_loc);
Enter value for empno: '1'
Enter value for ename: 'Aman'
Enter value for sal: 20000
Enter value for no_of_proj: 2
Enter value for proj_name: 'java'
Enter value for proj_loc: 'delhi'
old 1: insert into emp1
values(&empno,&ename,&sal,&no_of_proj,&proj_name,&proj_loc)
new 1: insert into emp1 values('1','Aman',20000,2,'java','delhi')

1 row created.

SQL> /
Enter value for empno: '2'
Enter value for ename: 'Suman'
Enter value for sal: 15000
Enter value for no_of_proj: 1
Enter value for proj_name: 'C++'
Enter value for proj_loc: 'bangalore'
old 1: insert into emp1
values(&empno,&ename,&sal,&no_of_proj,&proj_name,&proj_loc)
new 1: insert into emp1 values('2','Suman',15000,1,'C++','bangalore')

1 row created.

SQL> /
Enter value for empno: '3'
Enter value for ename: 'Rajat'
Enter value for sal: 12000
Enter value for no_of_proj: 4
Enter value for proj_name: 'C'
Enter value for proj_loc: 'pune'
old 1: insert into emp1
values(&empno,&ename,&sal,&no_of_proj,&proj_name,&proj_loc)
new 1: insert into emp1 values('3','Rajat',12000,4,'C','pune')

1 row created.
4
SQL> /
Enter value for empno: '4'
Enter value for ename: 'Amit'
Enter value for sal: 17000
Enter value for no_of_proj: 3
Enter value for proj_name: 'Smalltalk'
Enter value for proj_loc: 'noida'
old 1: insert into emp1
values(&empno,&ename,&sal,&no_of_proj,&proj_name,&proj_loc)
new 1: insert into emp1 values('4','Amit',17000,3,'Smalltalk','noida')

1 row created.

SQL> select * from emp1;

EMPNO ENAME SAL NO_OF_PROJ PROJ_NAME PROJ_LOC

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


1 Aman 20000 2 java delhi
2 Suman 15000 1 C++ bangalore
3 Rajat 12000 4 C pune
4 Amit 17000 3 Smalltalk noida

SQL> create view vw as select empno,ename,sal,proj_name,proj_loc from


emp1 where no_of_proj>1;

View created.

SQL> select * from vw;

EMPNO ENAME SAL PROJ_NAME PROJ_LOC


-------- ----- ------- ---------- -------------------
1 Aman 20000 java delhi
3 Rajat 12000 C pune
4 Amit 17000 Smalltalk noida

5
PRACTICAL NO 3

Aim: Create a view to display employees name and project name for employees
working on projects <p1 and p3> or <p2 and p4>
SQL>create table company(ssn varchar2(10) primary
key,namevarchar2(10),age varchar2(10));

Table created.

SQL> insert into company values('&ssn','&name','&age');


Enter value for ssn: 11
Enter value for name:Sumit
Enter value for age: 19
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('11','Sumit','19')

1 row created.

SQL> /
Enter value for ssn: 17
Enter value for name: Ajay
Enter value for age: 19
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('17','Ajay','19')

1 row created

SQL> /
Enter value for ssn: 19
Enter value for name:Vijay
Enter value for age: 25
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('19','Vijay','25')

1 row created.

SQL> /
Enter value for ssn: 23
Enter value for name:Vinod
Enter value for age: 22
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('23','Vinod','22')
1 row created.

SQL> /
Enter value for ssn: 29
Enter value for name:Nishant
Enter value for age: 20
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('29','Nishant','20')

1 row created.

SQL> /
Enter value for ssn: 87
Enter value for name:Kirti
Enter value for age: 47
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('87','Kirti','80')

1 row created.

SQL> /
Enter value for ssn:91
Enter value for name:Kashish
6
Enter value for age:42
old 1: insert into company values('&ssn','&name','&age')
new 1: insert into company values('91','Kashish','91')

1 row created.

SQL> select * from company;

SSN NAME AGE


---------- ---------- ----------
11 Sumit 19
17 Ajay 19
19 Vijay 25
23 Vinod 22
29 Nishant 20
87 Kirti 47
91 Kashish 42

7 rows selected.

SQL>create table project(ssn varchar2(10) references company,project_no


varchar2(10),project_name varchar2(10));

Table created.

SQL> insert into project values('&ssn','&project_no','&project_name');


Enter value for ssn: 11
Enter value for project_no: 1
Enter value for project_name: security
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('11','1','security')

1 row created.

SQL> /
Enter value for ssn: 29
Enter value for project_no: 2
Enter value for project_name: programming
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('29','2','programming')

1 row created.

SQL> /
Enter value for ssn: 17
Enter value for project_no: 3
Enter value for project_name: gaming
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('17','3','gaming')

1 row created.

SQL> /
Enter value for ssn: 29
Enter value for project_no: 4
Enter value for project_name: hacking
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('29','4','hacking')

1 row created.

SQL> /
7
Enter value for ssn: 19
Enter value for project_no: 3
Enter value for project_name: gaming
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('19','3','gaming')

1 row created.

SQL> /
Enter value for ssn: 29
Enter value for project_no: 3
Enter value for project_name: gaming
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('29','3','gaming')

1 row created.

SQL> /
Enter value for ssn: 19
Enter value for project_no: 1
Enter value for project_name: security
old 1: insert into project
values('&ssn','&project_no','&project_name')
new 1: insert into project values('19','1','security')

SQL> select * from project;

SSN project_no project_name


---------- ---------- -----------
11 1 security
29 2 programming
17 3 gaming
29 4 hacking
19 3 gaming
29 3 gaming
19 1 security
SQL>create view working1 as select name,project_name from
company,project where project_no=(1 AND 2) OR (3 AND 4);

View created.

SQL> select * from working1;

NAME PROJECT_NAME
------------ ------------------------
Vijay gaming
Vijay security
Nishant programming
Nishant hacking

8
PRACTICAL NO 4

AIM: Using two tables create view which shall perform equijoin

SQL>create table project52(projid varchar2(10) ,projname varchar2(20));

SQL> desc project52;


Name Null? Type
----------------------------------------- --------
----------------------
PROJID VARCHAR2(10)
PROJNAME VARCHAR2(20)

SQL>create table emp52(empname varchar2(20) ,empid


varchar2(10),projectid varchar2(10));

SQL> desc emp52;


Name Null? Type
----------------------------------------- --------
----------------------
EMPNAME VARCHAR2(20)
EMPID VARCHAR2(10)
PROJECTID VARCHAR2(10)

SQL> insert into emp52 values('Aman',01,1);

1 row created.

SQL> insert into emp52 values('Suman',02,2);

1 row created.

SQL> insert into emp52 values('Rajat',03,3);

1 row created.

SQL> select * from emp52;

EMPNAME EMPID PROJECTID


-------------------- ---------- ----------
Aman 1 1
Suman 2 2
Rajat 3 3

SQL> insert into project52 values(1,'aaa');

1 row created.

SQL> insert into project52 values(7,'bbb');

1 row created.

SQL> insert into project52 values(2,'ccc');

1 row created.

SQL> select * from project52;

PROJID PROJNAME
---------- --------------------
1 aaa
7 bbb
2 ccc

9
SQL> select emp52.empname,project52.projname,emp52.projectid from
project52,emp52 where emp52.projectid=project52.projid;

EMPNAME PROJNAME PROJECTID


-------------------- ------------------- ----------
Aman aaa 1
Suman ccc 2

10
PRACTICAL NO 5

Aim: Write a procedure to give incentive to employees working on project p1

SQL> create table server11(name varchar(9),salary varchar(10),HRA


varchar(10),DA varchar(18),projid varchar(10),incentive varchar(10));

Table created.

SQL> desc server11;


Name Null? Type
----------------------------------------- --------
----------------------------
NAME VARCHAR2(9)
SALARY VARCHAR2(10)
HRA VARCHAR2(10)
DA VARCHAR2(18)
PROJID VARCHAR2(10)
INCENTIVE VARCHAR2(10)

SQL> ed
Wrote file afiedt.buf

1 create or replace procedure inc(name in varchar,salary in


varchar,HRA in varchar,DA in varchar,projid in varchar)
2 is
3 incentive number(10,3);
4 t_salary number(10);
5 begin
6 inc:=2000;
7 if projid=p1 then
8 t_salary:= salary+HRA+DA+inc;
9 Incentive:=inc;
10 salary:=t_salary;
11 else
12 t_salary:=salary+HRA+DA;
13 Incentive:=0;
14 salary:=t_salary;
15 end if;
16 insert into server11 values(name,salary,HRA,DA,projid,incentive);
17* end;
18 /

Procedure created.

SQL> execute inc('pradeep','15000','8000','5000',’p1’);

PL/SQL procedure successfully completed.

SQL> select * from server11;

NAME SALARY HRA DA PROJID INCENTIVE


--------- ---------- ---------- --------- ---------- ----------
pradeep 30000 8000 5000 p1 2000

SQL> execute inc('rahul','46000','1234','123',’p2);

PL/SQL procedure successfully completed.

11
SQL> execute inc('vishal','30000','890','120',’p3’);

PL/SQL procedure successfully completed.

SQL> select * from server11;

NAME SALARY HRA DA PROJID INCENTIVE


--------- ---------- ---------- ---------- --------- ----------
pradeep 150000 8000 5000 p1 2000
rahul 46000 1234 123 p2 0
vishal 30000 890 120 p3 0

12

You might also like