Oracle Commands
Oracle Commands
SECTION 7
16). Update employ set sal=(select sal from employ where eno=100) where eno=101;
SECTION 8
17). Delete from employ where eno=101;
SECTION 9
22). Alter table employ add (doj date); -> to add a field.
31). revoke all on emp from student; ( to get back all the given permissions).
SECTION 10
32). CREATE TABLE bonuses (employee_id NUMBER, bonus NUMBER DEFAULT 100);
33). INSERT INTO bonuses(employee_id) (SELECT e.employee_id FROM employees e, orders o
EMPLOYEE_ID BONUS
----------- ----------
153 180
154 175
155 170
156 200
158 190
159 180
160 175
161 170
163 195
157 950
145 1400
170 960
179 620
152 900
169 1000
...
37). EXPLAIN PLAN SET STATEMENT_ID = 'Raise in Tokyo' INTO plan_table FOR UPDATE employees SET
salary = salary * 1.10 WHERE department_id
SECTION 11
40). savepoint a;
Savepoint b;
Rollback to savepoint b;
Rollback to savepoint a;
SECTION 12
41)
creating hierarchical tree structure of data create table tree(eno number(3),ename varchar2(20),mgr
number(3));
100 KING -
select level ,eno,ename,mgr from tree start with eno=100 connect by prior eno=mgr order by level;
42)
Start with 1
Increment by 1
Maxvalue 10
Minvalue 1
Nocycle
Cache 2;
SECTION 13
43).
SELECT * FROM emp WHERE sal = ANY(SELECT sal FROM emp WHERE deptno = 30)
SELECT dname, deptno FROM dept WHERE EXISTS (SELECT * FROM emp WHERE dept.deptno =
emp.deptno);
SECTION 14
44).
SELECT * FROM emp WHERE NOT (sal BETWEEN 1000 AND 2000);
Union
Select * from empdummy;
Intersect
Minus
Union all
SECTION 15
45).
SELECT CONCAT( CONCAT(ename, ' is a '), job) "Job" FROM emp WHERE empno = 7900
46).
SECTION 17
47).
SELECT TO_CHAR(ADD_MONTHS(hiredate,1),'DD-MON-YYYY') "Next month" FROM emp WHERE ename
= 'SMITH';
SELECT TO_CHAR(HIREDATE, 'Month DD, YYYY') "New date format" FROM emp WHERE ename = 'SMITH'
;
INSERT INTO bonus (bonus_date) SELECT TO_DATE('January 15, 1989, 11:00 A.M.','Month dd,
YYYY, HH:MI A.M.','NLS_DATE_LANGUAGE = American') FROM DUAL;
UPDATE emp SET sal = sal + TO_NUMBER('100.00', '9G999D99') WHERE ename = 'BLAKE';
SELECT GREATEST('HARRY','HARRIOT','HAROLD') "GREATEST" FROM DUAL;
SECTION 18
48).
49). Create table empl (empno number(5) , ename varchar2(15) , doj date default sysdate );
SECTION 19).
51).
SECTION 20).
53).
dept1(deptno));
ON DELETE CASCADE);
SECTION 21).
54).
edit a
@a
@@a
accept x
define
change /emp/dept
list
list 1
list 2
SECTION 22).
55).
define
define no=10
define
select * from x;
undefine no;
define
/
del
edit x
get x
host dir/p
host date
SECTION 23).
56).
Ttitle center 'This is employee Report'
Ttitle off
Btitle off
Ttitle on
Btitle on
break on deptno
Clear breaks
Clear Col
Select * from emp;
Connect student/cat
disconnect
connect scott/tiger;
edit a
@a
variable i number
Begin
:i: =10;
end;
print I
prompt 'This is sql*plus command'
Spool on
Spool xyz.txt
desc emp
spool off
edit xyz.txt
save x
edit x
SECTION 24).
57).
set autocommit on
set autotrace on
begin
End;
begin
end;
/
set cmdsep on
define no=10;
Set concat on
define no=10
Set echo on
Start a
Start a
edit
set embedded on
Define no = 20
Set feedback 20
Set heading on
SECTION 25)
58).
Set linesize 40
Set linesize 80
Set newpage 10
Set pagesize 50
Set pagesize 8
set pause on
begin
End;
set serveroutput on
desc –
>emp
desc –
+ emp
Where deptno=20;
Set sqlnumber off
Where deptno=20;
# desc emp
set time on
set timing on
Set wrap on
59).
Select * from emp where deptno=(select deptno from dept where dname='RESEARCH');
Select * from dept where deptno IN(select deptno from emp where job='SALESMAN');
Select * from emp where sal>(select sal from emp where ename='ALLEN');
5. Update the employ’s commission whose commission is zero with the commission of ename ‘WARD’;
Update emp set comm=(select comm from emp where ename='WARD') where comm=0;
6. Get the count of employs who are earning more than the average salary of ACCOUNTING department.
Select count(*) from emp where sal>(select avg(sal) from emp where
\
INSERT INTO DEPOSIT VALUES ('100','ANIL','VRCE',1000.00,'1-MAR-95');
SECTION 27).
60).
1)GIVE NAME OF CUSTOMERS HAVING LIVING CITY BOMBAY AND BRANCH CITY NAGPUR.
BRANCH B1 WHERE C1.CITY = 'BOMBAY' AND B1.CITY = 'NAGPUR' AND D1.CNAME = C1.CNAME AND
D1.BNAME = B1.BNAME;
2)GIVE NAME OF CUSTOMERS HAVING SAME LIVING CITY AS THEIR BRANCH CITY.
BRANCH B1 WHERE C1.CITY =B1.CITY AND D1.CNAME = C1.CNAME AND D1.BNAME = B1.BNAME;
3)GIVE NAME OF CUSTOMER WHO ARE BORROWERS AND DEPOSITORS AND HAVING LIVING CITY
NAGPUR.
SELECT D1.CNAME C1.CNAME, C1.CITY, BR1.CNAME FROM CUSTOMERS C1, DEPOSIT D1,BORROW BR1
4) GIVE NAME OF CUSTOMERS WHO ARE DEPOSITORS HAVING SAME BRANCH CITY OF MR. SUNIL.
SELECT D1.BNAME, B1.BNAME FROM DEPOSIT D1,BRANCH B1 WHERE D1.BNAME AND B2.CITY
5) GIVE NAME OF DEPOSITORS HAVING SAME LIVING CITY AS MR. ANIL AND HAVING DEPOSIT AMOUNT
AND D1.CNAME = C1.CNAME AND C1.CITY IN (SELECT C2.CITY FROM CUSTOMERS C2 WHERE C2.CNAME
= 'ANIL');
6) GIVE NAME OF BORROWERS HAVING DEPOSIT AMOUNT GREATER THAN 1000 AND LOAN AMOUNT
GREATER
THAN 2000.
D1.CNAME = BR1.CNAME AND D1.AMOUNT > 1000 AND BR1.AMOUNT > 2000;
SELECT D1.BNAME FROM DEPOSIT D1 WHERE D1.BNAME IN (SELECT D2.CNAME FROM DEPOSIT D2
8)GIVE NAME OF BORROWERS HAVING LOAN AMOUNT GREATER THAN AMOUNT OF PRAMOD.
SELECT BR1.CNAME,BR1.AMOUNT FROM BORROW BR1 WHERE BR1.AMOUNT >
9)GIVE NAME OF CUSTOMERS LIVING IN SAME CITY WHERE BRANCH OF DEPOSITOR SUNIL IS LOCATED.
C2.CNAME = 'PRAMOD');
SELECT D1.CNAME FROM DEPOSIT D1,CUSTOMERS C1,BRANCH B1 WHERE D1.CNAME = C1.CNAME AND
D1.BNAME = B1.BNAME AND B1.CITY IN (SELECT B2.CITY FROM BRANCH B2,DEPOSIT D2 WHERE
D2.CNAME = 'SUNIL'AND D2.BNAME = B2.BNAME) AND C1.CITY IN (SELECT C2.CITY FROM CUSTOMERS
C2
SELECT D1.CNAME FROM DEPOSIT D1 WHERE D1.BNAME IN (SELECT D2.BNAME FROM DEPOSIT D2
WHERE
D2.CNAME = 'SUNIL' );
SELECT D1.CNAME FROM DEPOSIT D1 WHERE D1.CNAME IN (SELECT C1.CNAME FROM CUSTOMERS C1
WHERE
C1.CITY = 'NAGPUR');
SECTION 28).
61).
select * from emp x where sal>(select avg(sal) from emp where x.deptno=deptno)
emp.deptno=dept.deptno;
Select Emp.Ename, Dept.Dname From Emp E, Dept D WHERE E.Deptno BETWEEN 10 AND 30;
and worker.sal>manager.sal;
emp.deptno=dept.deptno(+);
SECTION 29).
62).
create view v1 as select * from dept;
desc v1
where emp.deptno=dept.deptno;
SECTION 30).
63).
SECTION 32).
64).
Declare
a number;
Begin
a:=&a;
End;
65).
Declare
A number;
B number;
C number;
Begin
A:=&A;
B:=&B;
C:=A+B;
End;
SECTION 33).
66).
declare
no number(3);
begin
no:=&no;
if mod(no,2)=0 then
else
end if;
end;
67).
declare
i number;
begin
i:=1;
i:=i+1;
end loop;
end;
68).
declare
str varchar2(20);
l number:=0;
p number:=1;
begin
str:='&str';
loop
l:=l+1;
p:=p+1;
end loop;
end;
69).
declare
no number(2);
i number;
begin
no:=&no;
for i in 1..10
loop
end loop;
end;
SECTION 34)
70).
declare
no number;
work varchar(20);
name varchar(20);
begin
no:=&no;
end;
71).
declare
salary emp.sal%type;
no number;
begin
no:=&no;
else
end if;
commit;
end;
72).
declare
no emp.empno%type;
esal emp.sal%type;
grad temp.grade%type;
begin
no:=&no;
grad:='c';
grad:='b';
else
grad:='a';
end if;
commit;
end;
SECTION 35).
73).
Declare
no emp.empno%type;
sl emp.sal%type;
Begin
no:=&no;
Exception
raise_application_error(-20003,'Invalid input');
End;
74).
Declare
No number;
Sl number;
Invalid_sal exception;
Begin
No:=&no;
Raise invalid_sal;
Else
End if;
Exception
End;
SECTION 36).
75).
DECLARE
NAME EMP.ENAME%TYPE;
WORK EMP.JOB%TYPE;
BEGIN
OPEN C1;
LOOP
FETCH C1 INTO NAME,WORK;
END LOOP;
CLOSE C1;
END;
76).
DECLARE
NO EMP.Empno%TYPE;
SL EMP.SAL%TYPE;
GRD TEMP.GRADE%TYPE;
ZERO_SAL EXCEPTION;
BEGIN
COMMIT;
OPEN C1;
LOOP
IF SL=0 THEN
RAISE ZERO_SAL;
END IF;
GRD:='C';
GRD:='B';
ELSE
GRD:='A';
END IF;
END LOOP;
COMMIT;
EXCEPTION
END;
77).
declare
tsal number:=0;
e1 c1%rowtype;
begin
for e1 in c1 loop
tsal:=tsal+e1.sal;
dbms_output.put_line(to_char(e1.empno)||' '|| to_char(e1.sal));
end loop;
end;
SECTION 37).
78).
create or replace Procedure findname (eno IN number, ename1 out varchar2) is ename2
varchar2(30);
begin
ename1 := ename2;
Exception
end;
79).
declare
eno number(5);
ename2 varchar2(30);
begin
eno := &eno;
findname(eno,ename2);
dbms_output.put_line(ename2);
end;
80).
declare
A number;
B number;
C number;
begin
Z := X+Y;
end;
begin
A:=5;
B:=10;
sum(A,B,C);
dbms_output.put_line (to_char(C));
end;
81).
begin
end;
82).
declare
x number;
begin
p3(x);
end;
83).
begin
commit;
end;
ename1 varchar2(30);
begin
return (ename1);
Exception
end;
86).
declare
ename2 varchar2(30);
eno number(5);
begin
eno := &eno;
ename2 := getname(eno);
dbms_output.put_line(ename2);
end;
begin
if sl>5000 then
return 1;
else
return 0;
end if;
end;
SECTION 38).
89).
end packg;
90).
begin
commit;
end;
b number;
begin
if b<1000 then
b:=b*1.10;
else
b:=b*1.20;
end if;
commit;
end;
end packg;
91).
SECTION 39).
92).
BEGIN
END IF;
END;
93).
begin
:new.sal:=:new.sal+(:old.sal*0.01);
end;
94).
BEGIN
END;
SECTION 40).
95).
x NUMBER,
y NUMBER
);
/
96).
end1 PointType,
end2 PointType
); /
97).
lineID INT,
line LineType
);
98).
99).
VALUES(27, LineType(
PointType(0.0, 0.0),
PointType(3.0, 4.0)
);
SECTION 41).
100).
end1 PointType,
end2 PointType,
);
/
101).
BEGIN
RETURN scale *
SQRT((SELF.end1.x-SELF.end2.x)*(SELF.end1.x-SELF.end2.x) +
(SELF.end1.y-SELF.end2.y)*(SELF.end1.y-SELF.end2.y)
);
END;
END;
INSERT INTO Lines2 SELECT REF(pp), REF(qq) FROM Points pp,Points qq WHERE pp.x < qq.x;
SELECT ss.x FROM THE(SELECT points FROM Polygons WHERE name = 'square' ) ss WHERE ss.x
= ss.y;
desc Borrower
set serveroutput on
103). Declare
Begin
loop
for I in 1..B_rec.Tools.count
loop
dbms_output.put_line(B_rec.Tools(I));
end loop;
end loop;
end;
/
SECTION 42).
104).
phillips field',EMPTY_BLOB(),NULL);
NULL,EMPTY_CLOB(),EMPTY_BLOB(),BFILENAME('proposal_dir' ,'p2.doc'));
105).
declare
locator_var CLOB;
amount_var INTEGER;
offset_var INTEGER;
output_var VARCHAR2(10);
begin
amount_var:=10;
offset_var:=1;
DBMS_LOB.READ(locator_var, amount_var,offset_var,output_var);
end; /
106). declare
locator_var CLOB;
amount_var INTEGER;
offset_var INTEGER;
buffer_var VARCHAR2(25);
begin
amount_var:=12;
offset_var:=10;
DBMS_LOB.WRITE(locator_var, amount_var,offset_var,buffer_var);
commit;
end; /