0% found this document useful (0 votes)
14 views17 pages

RDBMS BCS BCA Printout 2025 PDF

The document outlines various SQL commands related to Data Definition Language (DDL), Data Manipulation Language (DML), Data Query Language (DQL), Transaction Control Language (TCL), and Data Control Language (DCL). It includes examples of creating, altering, and dropping tables, as well as inserting, updating, and deleting records. Additionally, it discusses transaction control commands like commit, rollback, and savepoints, along with data constraints such as primary key constraints.

Uploaded by

jaindeshna468
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)
14 views17 pages

RDBMS BCS BCA Printout 2025 PDF

The document outlines various SQL commands related to Data Definition Language (DDL), Data Manipulation Language (DML), Data Query Language (DQL), Transaction Control Language (TCL), and Data Control Language (DCL). It includes examples of creating, altering, and dropping tables, as well as inserting, updating, and deleting records. Additionally, it discusses transaction control commands like commit, rollback, and savepoints, along with data constraints such as primary key constraints.

Uploaded by

jaindeshna468
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/ 17

DATA DEFINITION LANGUAGE COMMAND DATA MANIPULATION LANGUAGE COMMAND

SQL> create table emp


2 (empno number(4), SQL> insert into emp values(1001,'shridhar','m',3000,10);
3 ename varchar2(20),
4 gender char(1), 1 row created.
5 sal number(10,2),
6 deptno number(2)); SQL> insert into emp values
2 (1002,'joe','m',4000,20);
Table created.
1 row created.
SQL> create table student
2 (roll number(3), SQL> insert into emp values(1003,'max','m',2000,30);
3 sname varchar2(20),
4 course varchar2(20), 1 row created.
5 fee number(5));
SQL> insert into emp values(1004,'scott','m',5000,40);
Table created.
1 row created.
SQL> alter table emp add job varchar2(20);
SQL> insert into emp (empno,ename,gender) values(1005,'lara','m');
Table altered.
1 row created.
SQL> alter table student add (cellno number(10),addr varchar2(20));
SQL> update emp set sal=sal+100;
Table altered.
5 rows updated.
SQL> alter table emp modify (ename varchar2(50), sal number(12,2));
SQL> update emp set sal=sal+500 where empno=1003;
Table altered.
1 row updated.
SQL> alter table student modify sname varchar2(50);
SQL> delete from emp where deptno=40;
Table altered.
1 row deleted.
SQL> alter table emp rename column ename to empname;
SQL> select *from emp;
Table altered.
SQL> delete from emp;
SQL> alter table emp rename column sal to salary;
4 rows deleted.
Table altered.
SQL> select * from emp;
SQL> alter table student drop column cellno;
no rows selected
Table altered.

SQL> rename emp to employ;

Table renamed.

SQL> drop table employ;

Table dropped.
SQL> desc employ;
ERROR:
ORA-04043: object employ does not exist
SQL> select empno,ename,sal,sal*.25,sal*.35,sal*.15,sal*sal*.25+sal*.35-sal*.15 from emp;
DATA QUERY LANGUAGE COMMAND EMPNO ENAME SAL SAL*.25 SAL*.35 SAL*.15 SAL*SAL*.25+SAL*.35-SAL*.15
--------------------------------------------------------------------------------
SQL> select *from emp;
1001 shridhar 3000 750 1050 450 2250600
EMPNO ENAME G SAL DEPTNO
1002 joe 4000 1000 1400 600 4000800
---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10
1003 max 2000 500 700 300 1000400
1002 joe m 4000 20
1003 max m 2000 30
1004 scott 5000 1250 1750 750 6251000
1004 scott m 5000 40
1005 lara m
1005 lara
SQL> select empno,ename,sal from emp;

EMPNO ENAME SAL


---------- -------------------- ----------
1001 shridhar 3000
1002 joe 4000
1003 max 2000
1004 scott 5000
1005 lara

SQL> select *from emp where deptno=10;

EMPNO ENAME G SAL DEPTNO


---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10

SQL> select empno,ename,deptno from emp where sal>=3000;

EMPNO ENAME DEPTNO


---------- -------------------- ----------
1001 shridhar 10
1002 joe 20
1004 scott 40

SQL> select *from emp where deptno=10 and empno=1001;

EMPNO ENAME G SAL DEPTNO


---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10

SQL> select *from emp where sal>=3000 and sal<=4000;

EMPNO ENAME G SAL DEPTNO


---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10
1002 joe m 4000 20

SQL> select *from emp where empno=1003 or empno=1002 or empno=1008;

EMPNO ENAME G SAL DEPTNO


---------- -------------------- - ---------- ----------
1002 joe m 4000 20
1003 max m 2000 30
TRANSACTION CONTROL LANGAUAGE SQL> insert into emp values (312,'banta','peon','m',1300,50);
1] Explicit commit and Rollback
1 row created.
====================================================================
SQL> insert into emp values (108,'petter','peon','m',10000,50);
SQL> select *from emp where ename in ('santa','banta');
1 row created.
EMPNO ENAME JOB G SAL DEPTNO
---------- -------------------- ---------- - ---------- ----------
SQL> insert into emp values (109,'tom','teacher','m',3000,40);
213 santa peon m 1200 50
312 banta peon m 1300 50
1 row created.
SQL> create table test (srno number(3));
SQL> insert into emp values (110,'jerry','servent','m',7000,10);
Table created.
1 row created.
SQL> select *from emp where ename like '%ta';
SQL> select *from emp;
EMPNO ENAME JOB G SAL DEPTNO
15 rows selected.
---------- -------------------- ---------- - ---------- ----------
213 santa peon m 1200 50
SQL> commit;
312 banta peon m 1300 50
Commit complete.
SQL> rollback;
SQL> select *from emp;
Rollback complete.
SQL> insert into emp values(110,'pinki','clerk','f',1200,40);
SQL> select *from emp where ename like '___ta';
1 row created.
EMPNO ENAME JOB G SAL DEPTNO
---------- -------------------- ---------- - ---------- ----------
SQL> insert into emp values(231,'raja','peon','m',8000,10);
213 santa peon m 1200 50
312 banta peon m 1300 50
1 row created.
====================================================================
SQL> select *from emp;
3] Savepoint and Rollback
====================================================================
SQL> rollback;
SQL> insert into emp values (350,'ramesh','clerk','m',2300,10);
Rollback complete.
1 row created.
SQL> select *from emp;
SQL> select *from emp;
SQL> commit;
18 rows selected.
Commit complete.
SQL> savepoint s1;
====================================================================
2] Implicit commit and Rollback
Savepoint created.
=====================================================================
SQL> update emp set sal=6000 where empno=105;
SQL> select *from emp;
4 rows updated.
15 rows selected.
SQL> savepoint s2;
SQL> insert into emp values (213,'santa','peon','m',1200,50);
Savepoint created.
1 row created.
SQL> delete from emp where ename='petter';
DATA CONTROL LANGUAGE
1 row deleted.
SQL> desc dba_users;
SQL> select *from emp where ename like 'pet%';
SQL> select username,account_status from dba_users where username in ('SCOTT','ROSE');
no rows selected
USERNAME ACCOUNT_STATUS
------------------------------ --------------------------------
SQL> rollback to savepoint s2
ROSE OPEN
2 ;
SCOTT OPEN
Rollback complete.
SQL> create user joe identified by joe;
SQL> select *from emp where ename like 'pet%';
User created.
EMPNO ENAME JOB G SAL DEPTNO
SQL> select username,account_status from dba_users where username in
---------- -------------------- ---------- - ---------- ----------
('SCOTT','ROSE','JOE');
108 petter peon m 10000 50
USERNAME ACCOUNT_STATUS
SQL> commit;
------------------------------ --------------------------------
JOE OPEN
Commit complete.
ROSE OPEN
SCOTT OPEN

SQL> conn sys as sysdba


Connected.
SQL> show user;
USER is "SYS"
SQL> grant connect,resource to rose;

Grant succeeded.

SQL> grant connect,resource to joe;

Grant succeeded.

SQL> conn scott/tiger;


Connected.

SQL> show user


USER is "SCOTT"

SQL> select *from tab;

TNAME TABTYPE CLUSTERID


------------------------------ ------- ----------
BONUS TABLE
SALGRADE TABLE
BIN$b0sFX/0eRQiMChjL02pWJg==$0 TABLE
BIN$FSgDdDR/TIitLD6CdeKFHQ==$0 TABLE
BCS1 TABLE

SQL> desc bcs1;

SQL> select *from bcs1;

no rows selected
SQL> insert into bcs1 values ('shafiq',9840398454,'m','prog in c'); SQL> grant select on bcs1 to rose;

1 row created. Grant succeeded.

SQL> insert into bcs1 values ('khaja',9923891000,'m','dbms'); SQL> conn rose/rose;


Connected.
1 row created. SQL> select *from scott.bcs1;

SQL> insert into bcs1 values ('kulkarni mm',9433257837,'f','foc'); TNAME CONTACT G SUB
-------------------- ---------- - --------------------
1 row created. shafiq 9840398454 m prog in c
khaja 8483891000 m dbms
SQL> commit; kulkarni mm 9433257837 f foc
jinturkar sir 9845039456 m html
Commit complete.
SQL> conn scott/tiger;
SQL> grant insert on bcs1 to rose; Connected.

Grant succeeded. SQL> grant all on bcs1 to rose with grant option;

SQL> show user; Grant succeeded.


USER is "SCOTT"
SQL> conn rose/rose
SQL> conn rose/rose; Connected.
Connected.
SQL> select *from scott.bcs1;
SQL> desc bcs1;
ERROR: TNAME CONTACT G SUB
ORA-04043: object bcs1 does not exist -------------------- ---------- - --------------------
shafiq 9840398454 m prog in c
khaja 9923891000 m dbms
SQL> select *from tab; kulkarni mm 9433257837 f foc
jinturkar sir 9845039456 m html
no rows selected
SQL> update scott.bcs1 set contact=9890000010 where tname='shafiq';
SQL> insert into scott.bcs1 values ('Khaja sir',9845039456,'m',’Oracle');
1 row updated.
1 row created.
SQL> grant insert,select on scott.bcs1 to joe;
SQL> select *from scott.bcs1; Grant succeeded.
select *from scott.bcs1
* SQL> conn joe/joe
ERROR at line 1: Connected.
ORA-01031: insufficient privileges SQL> select *from scott.bcs1;

TNAME CONTACT G SUB


SQL> conn scott/tiger; -------------------- ---------- - --------------------
Connected. shafiq 9890000010 m prog in c
khaja 9923891000 m dbms
SQL> select *from bcs1; kulkarni mm 9433257837 f foc
jinturkar sir 9845039456 m html
TNAME CONTACT G SUB
-------------------- ---------- - -------------------- SQL> select *from rose.bcs1;
shafiq 9840398454 m prog in c select *from rose.bcs1
khaja 9923891000 m dbms *ERROR at line 1:
kulkarni mm 9433257837 f foc ORA-00942: table or view does not exist
Khaja sir 9845039456 m Oracle
SQL> conn scott/tiger
Connected.
DATA CONSTRAINTS
SQL> revoke all on bcs1 from rose; Primary Key Constraints

Revoke succeeded. There are Two types to define Constraints


1] Column Level Constraint
SQL> conn joe/joe 2] Table Level Constraint
Connected. ==============================================
SQL> select *from scott.bcs1; 1] Column Level Constraint
select *from scott.bcs1
* SQL> create table dept
ERROR at line 1: 2 (deptno number (2) primary key,
ORA-00942: table or view does not exist 3 dname varchar2(20),
4 loc varchar2(20));
SQL> conn scott/tiger
Connected. Table created.

SQL> conn rose/rose; SQL> insert into dept values (10,'sales','mumbai');


Connected.
1 row created.
SQL> revoke insert,select on scott.bcs1 from joe;
revoke insert,select on scott.bcs1 from joe SQL> insert into dept values (30,'sales','hyd');
*
ERROR at line 1: 1 row created.
ORA-01927: cannot REVOKE privileges you did not grant
SQL> insert into dept values (40,'stock','goa');

1 row created.

SQL> insert into dept values (10,'hr','pune');


insert into dept values (10,'hr','pune')
*
ERROR at line 1:
ORA-00001: unique constraint (MOHI.SYS_C005394) violated

SQL> insert into dept values (null,'finance','ban');


insert into dept values (null,'finance','ban')
*
ERROR at line 1:
ORA-01400: cannot insert NULL into ("MOHI"."DEPT"."DEPTNO")

SQL> insert into dept values (50,'hr','pune');

1 row created.

SQL> drop table dept;

Table dropped.

=========================================================

2] Table Level Constraint

SQL> create table dept


2 (deptno number(2),
3 dname varchar2(20),
4 loc varchar2(20),
5 primary key (deptno)); SQL> insert into dept values (null,'hr','pune');
Table created. insert into dept values (null,'hr','pune')
*
SQL> insert into dept values (10,'sales','mumbai'); ERROR at line 1:
ORA-01400: cannot insert NULL into ("MOHI"."DEPT"."DEPTNO")
1 row created.
SQL> insert into dept values (10,'admin','hyderabad');
SQL> insert into dept values (30,'sales','hyd'); insert into dept values (10,'admin','hyderabad')
*
1 row created. ERROR at line 1:
ORA-00001: unique constraint (MOHI.SYS_C005397) violated
SQL> insert into dept values (40,'stock','goa');
SQL> insert into dept values(30,'sales','goa');
1 row created.
1 row created.
SQL> insert into dept values (10,'hr','pune');
insert into dept values (10,'hr','pune') SQL> insert into dept values(40,null,'aurgabad');
* insert into dept values(40,null,'aurgabad')
ERROR at line 1: *
ORA-00001: unique constraint (MOHI.SYS_C005395) violated ERROR at line 1:
ORA-01400: cannot insert NULL into ("MOHI"."DEPT"."DNAME")

SQL> insert into dept values (null,'finance','ban'); SQL> select *from dept;
insert into dept values (null,'finance','ban')
* DEPTNO DNAME LOC
ERROR at line 1: ---------- -------------------- --------------------
ORA-01400: cannot insert NULL into ("MOHI"."DEPT"."DEPTNO") 10 sales mumbai
30 sales goa
SQL> insert into dept values (50,'hr','pune');
SQL> drop table dept;
1 row created.
Table dropped.
SQL> select *from dept; =====================================================
UNIQUE Constraints
DEPTNO DNAME LOC
---------- -------------------- -------------------- SQL> create table dept
10 sales mumbai 2 (deptno number (2) primary key,
30 sales hyd 3 dname varchar2(20) not null unique,
40 stock goa 4 loc varchar2(20));
50 hr pune
Table created.
SQL> drop table dept;
SQL> desc dept;
Table dropped. Name Null? Type
==================================================== ----------------------------------------- -------- ----------------------------
NOT NULL Constraint DEPTNO NOT NULL NUMBER(2)
DNAME NOT NULL VARCHAR2(20)
SQL> create table dept LOC VARCHAR2(20)
2 (deptno number(2) primary key,
3 dname varchar2(20) not null, SQL> insert into dept values (10,'sales','mumbai');
4 loc varchar2(20));
1 row created.
Table created.
SQL> insert into dept values (20,'stock','pune');
SQL> insert into dept values (10,'sales','mumbai');
1 row created.
1 row created.
SQL> insert into dept values (10,null,'hyderabad');
insert into dept values (10,null,'hyderabad')
ERROR at line 1: SQL> insert into emp values(106,'petter','d',2100);
ORA-01400: cannot insert NULL into ("MOHI"."DEPT"."DNAME") insert into emp values(106,'petter','d',2100)
*
ERROR at line 1:
SQL> insert into dept values (10,'comp','banlore'); ORA-02290: check constraint (MOHI.SYS_C005402) violated
insert into dept values (10,'comp','banlore')
* SQL> insert into emp values(101,'petter','m',5400);
ERROR at line 1: insert into emp values(101,'petter','m',5400)
ORA-00001: unique constraint (MOHI.SYS_C005399) violated *
ERROR at line 1:
SQL> insert into dept values(40,'sales','aurangabad'); ORA-00001: unique constraint (MOHI.SYS_C005403) violated
insert into dept values(40,'sales','aurangabad')
* SQL> select *from emp;
ERROR at line 1:
ORA-00001: unique constraint (MOHI.SYS_C005400) violated EMPNO ENAME G SAL
---------- -------------------- - ----------
SQL> insert into dept values (40,'comp','banglore'); 101 scott m 2000
102 marshal m 3200
1 row created. 103 rose f 4300

SQL> select *from dept; =================================================================


REFERENTIAL INTEGRITY CONSTRAINT
DEPTNO DNAME LOC
---------- -------------------- --------------------
It is also called as FOREIGN KEY Constraint
=========================================================
10 sales mumbai
20 stock pune
SQL> create table dept
40 comp banglore
2 (deptno number (2) primary key,
======================================================
3 dname varchar2(20),
CHECK Constraint 4 loc varchar2(20));
SQL> create table emp Table created.
2 (empno number(4) primary key,
3 ename varchar2(20) not null, SQL> create table emp
4 gender char(1) check (gender in ('m','f')), 2 (empno number (4) primary key,
5 sal number(10,2)); 3 ename varchar2(20),
4 gender char(1),
Table created. 5 salary number(10,2),
6 deptno number(2) references dept on delete cascade);
SQL> desc emp;
Name Null? Type Table created.
----------------------------------------- -------- ----------------------------
EMPNO NOT NULL NUMBER(4) SQL> insert into dept values (10,'finance','hyderabad');
ENAME NOT NULL VARCHAR2(20)
GENDER CHAR(1) 1 row created.
SAL NUMBER(10,2)
SQL> insert into dept values (20,'marketing','pune');
SQL> insert into emp values(101,'scott','m',2000);
1 row created.
1 row created.
SQL> insert into dept values (30,'sales','mumbai');
SQL> insert into emp values(102,'marshal','m',3200);
1 row created.
1 row created.
SQL> insert into dept values (40,'computer','banlore');
SQL> insert into emp values(103,'rose','f',4300);
1 row created.
1 row created.
SQL> insert into dept values (50,'hr','nagpur');
SPECIAL OPERATORS
1 row created.
SQL> select *from emp where empno in (1001,1002,1005);
SQL> select *from dept;
EMPNO ENAME G SAL DEPTNO
---------- -------------------- - ---------- ----------
SQL> desc emp;
1001 shridhar m 3000 10
SQL> insert into emp values (101,'scott','m',3000,10);
1002 joe m 4000 20
1005 lara m
1 row created.

SQL> insert into emp values (120,'marshal','m',2100,20);


SQL> select *from emp where sal between 2000 and 4000;
1 row created.
EMPNO ENAME G SAL DEPTNO
---------- -------------------- - ---------- ----------
SQL> insert into emp values (321,'petter','m',5400,30);
1001 shridhar m 3000 10
1002 joe m 4000 20
1 row created.
1003 max m 2000 30
SQL> insert into emp values (222,'rose','f',1200,40);
SQL> select *from emp where sal not between 2000 and 4000;
1 row created.
EMPNO ENAME G SAL DEPTNO
---------- -------------------- - ---------- ----------
SQL> insert into emp values (410,'mohi','m',6500,50);
1004 scott m 5000 40
1 row created.
SQL> select *from emp where ename like 's%';
SQL> insert into emp values (320,'rahul','m',2190,10);
EMPNO ENAME G SAL DEPTNO
---------- -------------------- - ---------- ----------
1 row created.
1001 shridhar m 3000 10
1004 scott m 5000 40
SQL> insert into emp values (610,'johnson','m',3900,60);
insert into emp values (610,'johnson','m',3900,60)
SQL> select *from emp where ename like 's%' or ename like 'S%';
*
ERROR at line 1:
EMPNO ENAME G SAL DEPTNO
ORA-02291: integrity constraint (KHAJA.SYS_C005406) violated - parent key not
---------- -------------------- - ---------- ----------
found
1001 shridhar m 3000 10
1004 scott m 5000 40
SQL> select *from emp;
SQL> select *from emp where ename like '%e';
6 rows selected.
EMPNO ENAME G SAL DEPTNO
SQL> select *from dept;
---------- -------------------- - ---------- ----------
1002 joe m 4000 20
SQL> insert into dept values (60,'stock','pbn');
SQL> select *from emp where ename like 's%r';
1 row created.
EMPNO ENAME G SAL DEPTNO
SQL> insert into emp values (610,'johnson','m',3900,60);
---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10
1 row created.
SQL> select *from emp where ename like '_ _ _';
SQL> select *from emp;
EMPNO ENAME G SAL DEPTNO
7 rows selected.
---------- -------------------- - ---------- ----------
1002 joe m 4000 20
SQL> delete from emp where deptno=60;
1003 max m 2000 30
1 row deleted.
SQL> select *from emp where ename like '_h%';
SQL FUNCTION
EMPNO ENAME G SAL DEPTNO Number Function
---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10 SQL> select abs(-28), abs(20*455-50*30) from dual;

SQL> select *from emp where ename like '%dh%'; ABS(-28) ABS(20*455-50*30)
---------- -----------------
EMPNO ENAME G SAL DEPTNO 28 7600
---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10 SQL> select sqrt(625),power(4,2) from dual;

SQL> select *from emp; SQRT(625) POWER(4,2)


---------- ----------
EMPNO ENAME G SAL DEPTNO 25 16
---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10 SQL> select mod(11,2) from dual;
1002 joe m 4000 20
1003 max m 2000 30 MOD(11,2)
1004 scott m 5000 40 ----------
1005 lara m 1

SQL> select sin(30),cos(45),tan(60) from dual;

SIN(30) COS(45) TAN(60)


---------- ---------- ----------
-.98803162 .525321989 .320040389

SQL> select ln(35),log(2,35),log(10,35),exp(1.17) from dual;

LN(35) LOG(2,35) LOG(10,35) EXP(1.17)


---------- ---------- ---------- ----------
3.55534806 5.12928302 1.54406804 3.22199264

SQL> select sign(100+300),sign (500-50*1000),sign(500-50*10) from dual;

SIGN(100+300) SIGN(500-50*1000) SIGN(500-50*10)


------------- ----------------- ---------------
1 -1 0

SQL> select round (19.7678), round (19.7678,2), round (20.2324), round (20.2342,2) from dual;

ROUND(19.7678) ROUND(19.7678,2) ROUND(20.2324) ROUND(20.2342,2)


-------------- ---------------- -------------- ----------------
20 19.77 20 20.23

SQL> select ename,job,round (sal*.15) pf from emp;

SQL> select trunc (19.7678), trunc(19.7678,2), trunc (20.2324), trunc(20.2324,2) from dual;

TRUNC(19.7678) TRUNC(19.7678,2) TRUNC(20.2324) TRUNC(20.2324,2)


-------------- ---------------- -------------- ----------------
19 19.76 20 20.23

SQL> select round(24.121),ceil(24.121) from dual;


ROUND(24.121) CEIL(24.121)
------------- ------------ CCCC
24 25 ----
ABab
SQL> select trunc(25.8867),floor(25.8867), trunc(25.8867,2) from dual;
SQL> select concat('Oracle','10g') from dual;
TRUNC(25.8867) FLOOR(25.8867) TRUNC(25.8867,2)
-------------- -------------- ---------------- CONCAT('O
25 25 25.88 ---------
Oracle10g
CHARACTER FUNCTION
SQL> select 'Galaxy'||' '|| 'Computers' from dual;
SQL> desc emp;
Name Null? Type 'GALAXY'||''||'C
----------------------------------------- -------- ---------------------------- ----------------
EMPNO NUMBER(5) Galaxy Computers
ENAME VARCHAR2(20)
JOB VARCHAR2(10) SQL> select ename,lpad(ename,10,'*') left, rpad(ename,10,'*') right from emp;
GENDER CHAR(1)
SAL NUMBER(10,2) ENAME LEFT RIGHT
DEPTNO NUMBER(2) -------------------- ---------- ----------
petter ****petter petter****
SQL> select *from emp; tom *******tom tom*******
jerry *****jerry jerry*****
EMPNO ENAME JOB G SAL DEPTNO santa *****santa santa*****
---------- -------------------- ---------- - ---------- ---------- banta *****banta banta*****
108 petter peon m 10000 50
109 tom teacher m 3000 40 SQL> select lpad(rpad('5000',7,'*'),10,'*') from dual;
110 jerry servent m 7000 10
213 santa peon m 1200 50 LPAD(RPAD(
312 banta peon m 1300 50 ----------
***5000***

ENAME INITCAP(ENAME) UPPER(ENAME) LOWER(ENAME) SQL> select ename,lpad(rpad(ename,length(ename)+3,'*'),length(ename)+6,'*') "padding" from


-------------------- -------------------- -------------------- -------------------- emp;
petter Petter PETTER petter
tom Tom TOM tom ENAME padding
jerry Jerry JERRY jerry ----------------------------------------
santa Santa SANTA santa petter ***petter***
banta Banta BANTA banta
tom ***tom***
SQL> select ename,length(ename),reverse(ename) from emp; jerry ***jerry***
ENAME
ENAME LENGTH(ENAME) REVERSE(ENAME) santa ***santa***
-------------------- ------------- -------------------- banta ***banta***
petter 6 rettep
tom 3 mot SQL> select ltrim('sssjoe','s'),rtrim('joesss','s'),trim('s' from 'sssjoesss') from dual
jerry 5 yrrej
santa 5 atnas LTR RTR TRI
banta 5 atnab --- --- ---
joe joe joe
SQL> select ascii('A'),ascii('B'),ascii('a'),ascii('b') from dual;
SQL> select *from emp where lower(trim(ename))='jerry';
ASCII('A') ASCII('B') ASCII('A') ASCII('B')
---------- ---------- ---------- ---------- EMPNO ENAME JOB G SAL DEPTNO
65 66 97 98 ---------- -------------------- ---------- - ---------- ----------
110 jerry servent m 7000 10
SQL> select chr(65),chr(66),chr(97),chr(98) from dual;
SQL> select replace('jack and jue','j','Bl') from dual;
SYSDATE ADD_MONTH ADD_MONTH
REPLACE('JACKA --------- --------- ---------
-------------- 01-JAN-06 01-JAN-07 01-JAN-05
Black and Blue
SQL> select next_day(sysdate,'sunday'),next_day(sysdate,'monday') from dual;
SQL>select ename,translate(ename,'aeiou','AEIOU') from emp
NEXT_DAY( NEXT_DAY(
ENAME TRANSLATE(ENAME,'AEI --------- ---------
-------------------- -------------------- 08-JAN-06 02-JAN-06
petter pEttEr
tom tOm SQL> select last_day(sysdate),last_day('10-feb-14'),last_day('10-apr-14') from dual;
jerry jErry
santa sAntA LAST_DAY( LAST_DAY( LAST_DAY(
banta bAntA --------- --------- ---------
31-JAN-06 28-FEB-14 30-APR-14
SQL> select soundex('Oracle'),soundex('Galaxy') from dual;
SQL> select last_day(sysdate),substr(last_day('10-feb-09'),1,2),last_day('16-apr-09') from dual;
SOUN SOUN
---- ---- LAST_DAY( SU LAST_DAY(
O624 G420 --------- -- ---------
31-JAN-06 28 30-APR-09
SQL> select substr('Oracle 9i',7) from dual;
SQL> select sysdate,sysdate+10,sysdate-10 from dual;
SUB
--- SYSDATE SYSDATE+1 SYSDATE-1
9i --------- --------- ---------
01-JAN-06 11-JAN-06 22-DEC-05
SQL> select substr('i logic',2) from dual;
SQL> select round(sysdate,'day'),
SUBSTR 2 round(sysdate,'month'),
------ 3 round(sysdate,'year') from dual;
logic
ROUND(SYS ROUND(SYS ROUND(SYS
SQL> select ename,substr(ename,1,3),substr(ename,1,5),substr(ename,5) from emp; --------- --------- ---------
01-JAN-06 01-JAN-06 01-JAN-06
ENAME SUB SUBST SUBSTR(ENAME,5)
-------------------- --- ----- ---------------- SQL>select to_char(sysdate,'ddd,day,month,year') from dual
petter pet pette er
tom tom tom TO_CHAR(SYSDATE,'DDD,DAY,MONTH,YEAR')
jerry jer jerry y ------------------------------------------------------------------
santa san santa a 001,sunday ,january ,two thousand six
banta ban banta a
SQL> select to_char(sysdate,'dd/mm/yyyy HH24:mi:ss am') from dual;
SQL> select instr('ANAND','A',1,1),instr('ANAND','A',1,2) from dual;
TO_CHAR(SYSDATE,'DD/MM
INSTR('ANAND','A',1,1) INSTR('ANAND','A',1,2) ----------------------
---------------------- ---------------------- 01/01/2006 01:19:18 am

DATE FUNCTION SQL> select to_char(sysdate,'cc'),


2 to_char(sysdate,'Q'),
SQL> select sysdate from dual; 3 to_char(sysdate,'ddsp'),
4 to_char(sysdate,'ww'),
SYSDATE 5 to_char(sysdate,'w') from dual;
---------
01-JAN-06 TO T TO_CHAR(SYSD TO T
-- - ------------ -- -
SQL>select sysdate,add_months(sysdate,12),add_months(sysdate,-12) from dual 21 1 one 01 1
SQL> select to_date('100','ddd') from dual;
Group Function / Aggregate Function
SQL> select *from emp;
TO_DATE('
---------
EMPNO ENAME G SAL DEPTNO
10-APR-06
---------- -------------------- - ---------- ----------
1001 shridhar m 3000 10
SQL> select to_date('12/25/2009 18:30','mm/dd/yy hh24:mi') from dual;
1002 joe m 4000 20
1003 max m 2000 30
TO_DATE('
1004 scott m 5000 40
---------
1005 lara m
25-DEC-09
SQL> select count(*) from emp;
CONVERSION FUNCTIONS
COUNT(*)
1. To_Char function ----------
5
SQL> select to_char(3000,'$9999')from dual;
SQL> select sum(sal) from emp;
TO_CHA
------ SUM(SAL)
$3000 ----------
14000
2.To_Date function
SQL> select avg(sal) from emp;
SQL> select to_date('01-06-2014','dd-mm-yy')from dual;
AVG(SAL)
TO_DATE(' ----------
--------- 3500
01-JUN-14
SQL> select min(sal) from emp;
3. NVL function
MIN(SAL)
SQL> select nvl(null,1)from dual; ----------
2000
NVL(NULL,1)
----------- SQL> select max(sal) from emp;
1
MAX(SAL)
4.To_Number function ----------
5000
SQL> select to_number('2009')+1 from dual;
SQL> select stddev(sal) from emp;
TO_NUMBER('2009')+1
------------------- STDDEV(SAL)
2010 -----------
1290.99445
SQL> select to_number(substr('ora1001',4))+1 from dual;
SQL> spool off
TO_NUMBER(SUBSTR('ORA1001',4))+1
--------------------------------
1002
VIEWS JOIN TABLES
SQL> select *from customer;
SQL> select * from emp;
ID NAME AGE ADDR SALARY
8 rows selected. ---------- -------------------- ---------- -------------------- ----------
1 ramesh 32 ahmedabad 2000
SQL> create view vemp as select *from emp; 2 robin 25 delhi 1500
3 smith 23 kota 2000
View created. 4 brain 25 west indis 3000
5 lara 30 newzeeland 1200
SQL> desc vemp; 6 sehwag 29 india 3400
SQL> select *from emp; 7 adam 33 australia 2300

8 rows selected. 7 rows selected.

SQL> insert into emp values(900,'jackson','m','peon',60); SQL> select *from orders;

1 row created. OID CUST_ID AMOUNT


---------- ---------- ----------
SQL> select *from emp; 102 3 3000
100 3 1500
9 rows selected. 101 2 1560
103 4 2060
SQL> select *from vemp;
SIMPLE JOIN
9 rows selected.
SQL> select id,name,age,amount from customer,orders where customer.id=orders.cust_id;
SQL> insert into vemp values(500,'umar','m','dba',60);
ID NAME AGE AMOUNT
1 row created.
---------- -------------------- ---------- ----------
2 robin 25 1560
SQL> select *from vemp;
3 smith 23 1500
3 smith 23 3000
10 rows selected.
4 brain 25 2060
SQL> select *from emp;
NATURAL JOIN
10 rows selected. ==========================================================================
=
SQL> update emp set deptno=20 where ename='umar'; SQL> select *from customer natural join orders;

1 row updated. ID NAME AGE ADDR SALARY OID CUST_ID AMOUNT


---------- -------------------- ---------- -------------------- ---------- ---------- ---------- ----------
SQL> select *from emp where empno=500; 1 ramesh 32 ahmedabad 2000 102 3 3000
2 robin 25 delhi 1500 102 3 3000
EMPNO ENAME G JOB DEPTNO 3 smith 23 kota 2000 102 3 3000
---------- -------------------- - ---------- ---------- 4 brain 25 west indis 3000 102 3 3000
500 umar m dba 20 5 lara 30 newzeeland 1200 102 3 3000
6 sehwag 29 india 3400 102 3 3000
10 rows selected. 7 adam 33 australia 2300 102 3 3000
1 ramesh 32 ahmedabad 2000 100 3 1500
SQL> select *from vemp where empno=500; 2 robin 25 delhi 1500 100 3 1500
EMPNO ENAME G JOB DEPTNO 3 smith 23 kota 2000 100 3 1500
---------- -------------------- - ---------- ---------- 4 brain 25 west indis 3000 100 3 1500
500 umar m dba 20
ID NAME AGE ADDR SALARY OID CUST_ID AMOUNT
SQL> delete from emp where empno=211; ---------- -------------------- ---------- -------------------- ---------- ---------- ---------- ----------
5 lara 30 newzeeland 1200 100 3 1500
6 sehwag 29 india 3400 100 3 1500 AGE NUMBER(2)
7 adam 33 australia 2300 100 3 1500 ADDR VARCHAR2(20)
1 ramesh 32 ahmedabad 2000 101 2 1560 SALARY NUMBER(10,2)
2 robin 25 delhi 1500 101 2 1560
3 smith 23 kota 2000 101 2 1560 SQL> desc orders;
4 brain 25 west indis 3000 101 2 1560 Name Null? Type
5 lara 30 newzeeland 1200 101 2 1560 -------------------------------------------------------------------------------------------------------------------------------
6 sehwag 29 india 3400 101 2 1560 OID NUMBER(3)
7 adam 33 australia 2300 101 2 1560 CUST_ID NUMBER(2)
1 ramesh 32 ahmedabad 2000 103 4 2060 AMOUNT NUMBER(4)

ID NAME AGE ADDR SALARY OID CUST_ID AMOUNT CROSS JOIN OR CARTESIAN JOIN
--------- -------------------- ---------- -------------------- ---------- ---------- ---------- ---------- =====================================================================
2 robin 25 delhi 1500 103 4 2060 SQL> select customer.name,customer.addr,orders.oid,orders.amount from customer cross join
3 smith 23 kota 2000 103 4 2060 orders;
4 brain 25 west indis 3000 103 4 2060
5 lara 30 newzeeland 1200 103 4 2060 NAME ADDR OID AMOUNT
6 sehwag 29 india 3400 103 4 2060 -------------------- -------------------- ---------- ----------
7 adam 33 australia 2300 103 4 2060 ramesh ahmedabad 102 3000
robin delhi 102 3000
28 rows selected. smith kota 102 3000
SELF JOIN brain west indis 102 3000
========================================================================== lara newzeeland 102 3000
=SQL> select a.id,b.name,a.salary from customer a, customer b where a.salary<b.salary; sehwag india 102 3000
adam australia 102 3000
ID NAME SALARY ramesh ahmedabad 100 1500
---------- -------------------- ---------- robin delhi 100 1500
5 robin 1200 smith kota 100 1500
5 ramesh 1200 brain west indis 100 1500
5 smith 1200
5 adam 1200 NAME ADDR OID AMOUNT
5 brain 1200 -------------------- -------------------- ---------- ----------
5 sehwag 1200 lara newzeeland 100 1500
2 ramesh 1500 sehwag india 100 1500
2 smith 1500 adam australia 100 1500
2 adam 1500 ramesh ahmedabad 101 1560
2 brain 1500 robin delhi 101 1560
2 sehwag 1500 smith kota 101 1560
brain west indis 101 1560
ID NAME SALARY lara newzeeland 101 1560
---------- -------------------- ---------- sehwag india 101 1560
1 adam 2000 adam australia 101 1560
1 brain 2000 ramesh ahmedabad 103 2060
1 sehwag 2000
3 adam 2000 NAME ADDR OID AMOUNT
3 brain 2000 -------------------- -------------------- ---------- ----------
3 sehwag 2000 robin delhi 103 2060
7 brain 2300 smith kota 103 2060
7 sehwag 2300 brain west indis 103 2060
4 sehwag 3000 lara newzeeland 103 2060
sehwag india 103 2060
20 rows selected. adam australia 103 2060

SQL> desc customer; 28 rows selected.


Name Null? Type LEFT OUTER JOIN
------------------------------------------------- ---------------------------------------------------------------------------- =====================================================================
ID NUMBER(2) SQL> select customer.name,customer.addr,orders.oid,orders.amount
NAME VARCHAR2(20)
from customer left outer join orders on customer.id=orders.cust_id;
STRUCTURE OF PL/SQL BLOCK
Example : 1
NAME ADDR OID AMOUNT
-------------------- -------------------- ---------- ----------
Write a PL/SQL Block to retrive the data from emp table
smith kota 102 3000
smith kota 100 1500
robin delhi 101 1560
SQL> set serveroutput on
brain west indis 103 2060
SQL> desc emp;
lara newzeeland
Name Null? Type
ramesh ahmedabad
----------------------------------------- -------- ----------------------------
sehwag india
EMPNO NUMBER(4)
adam australia
ENAME VARCHAR2(20)
GENDER CHAR(1)
8 rows selected.
SAL NUMBER(10,2)
RIGHT OUTER JOIN DEPTNO NUMBER(2)
=====================================================================
SQL>select customer.name,customer.addr,orders.oid,orders.amount SQL> select * from emp;
from customer right outer join orders on customer.id=orders.cust_id
EMPNO ENAME G SAL DEPTNO
---------- -------------------- - ---------- ----------
NAME ADDR OID AMOUNT 1001 shridhar m 3000 10
-------------------- -------------------- ---------- ---------- 1002 joe m 4000 20
robin delhi 101 1560 1003 max m 2000 30
smith kota 100 1500 1004 scott m 5000 40
smith kota 102 3000 1005 lara m
brain west indis 103 2060
declare
FULL OUTER JOIN eno number(4):=1002;
===================================================================== empn varchar2(20);
SQL>select * from customer full outer join orders on customer.id=orders.cust_id gen varchar2(2);
esal number(10,2);
edpt number(2);
ID NAME AGE ADDR SALARY OID CUST_ID AMOUNT begin
----- -------------------- ---------- -------------------- ---------- ---------- ---------- ---------- select empno,ename,gender,sal,deptno into eno,empn,gen,esal,edpt from emp where empno=eno;
3 smith 23 kota 2000 102 3 3000 dbms_output.put_line('Employee Details are');
3 smith 23 kota 2000 100 3 1500 dbms_output.put_line(eno||' '||empn||' '||gen||' '||esal||' '||edpt);
2 robin 25 delhi 1500 101 2 1560 end;
4 brain 25 west indis 3000 103 4 2060 /
5 lara 30 newzeeland 1200
1 ramesh 32 ahmedabad 2000 SQL> save retrive
6 sehwag 29 india 3400 Created file retrive.sql
7 adam 33 australia 2300
SQL> start retrive
8 rows selected.
Employee Details are
1002 joe m 4000 20

PL/SQL procedure successfully completed.

Example : 2

Write a PL/SQL Block for Arithmatic Operation

declare
add number(4);
sub number(4);
mul number(4);
div number(4); 5 begin
a number(4):=60; 6 radius := 3;
b number(4):=20; 7 while radius <=7
begin 8 loop
add:=a+b; 9 area := pi*power(radius,2);
sub:=a-b; 10 insert into areas values (radius,area);
mul:=a*b; 11 radius := radius+1;
div:=a/b; 12 end loop;
dbms_output.put_line(add); 13* end;
dbms_output.put_line(sub); SQL> /
dbms_output.put_line(mul);
dbms_output.put_line(div); PL/SQL procedure successfully completed.
end;
/ SQL> select *from areas;
SQL> save math
Created file math.sql RADIUS AREA
---------- ----------
SQL> start math 3 28.26
80 4 50.24
40 5 78.5
1200 6 113.04
3 7 153.86

PL/SQL procedure successfully completed. SQL> spool off

Example : 3

PL/SQL Block for calculating the area of circle

SQL> declare
2 pi constant number(9,7):=3.14;
3 radius integer(5);
4 area number(14,2);
5 begin
6 radius:=3;
7 area:=pi*power(radius,2);
8 insert into areas values(radius,area);
9 end;
10 /

PL/SQL procedure successfully completed.

SQL> select *from areas;

RADIUS AREA
---------- ----------
3 28.26

SQL>

Example : 4

PLSQL BLOCK FOR AREA OF CIRCLE USING WHILE LOOP

SQL> declare
2 pi constant number(9,7) := 3.14;
3 radius integer (5);
4 area number(14,2);

You might also like