DBMS LAB PROGRAMS
DBMS LAB PROGRAMS
No: 1 Create a database table, add constraints (primary key, unique, check, Not null),
insert rows, update and delete rows using SQL DDL and DML
commands.
jones 506
hayden 508
SQL> alter table customer drop constraint ccd;
Table altered.
SQL> alter table customer add constraint ccdd primary key(cid);
Table altered.
SQL> insert into custo values ('ricky', 508);
insert into custo values ('ricky', 508)
*
ERROR at line 1:
ORA-00001: unique constraint (IICSE111.CCDD) violated
SQL> insert into custo values ('ricky', 509);
1 row created.
SQL> select * from custo;
CNAME CID
jones 506
hayden 508
ricky 509
aaa 10000 11 35
bbb 20000 12 36
ccc 30000 13 37
SQL> alter table emply disable constraint aa;
Table altered.
SQL> alter table emply enable constraint aa;
Table altered.
SQL> create table empp (ename varchar(30) not null, eid varchar(20) not null);
Table created.
SQL> insert into empp values ('abcde',11);
1 row created.
SQL> insert into empp values ('klmno',null);
insert into empl values ('klmno',null)
*
ERROR at line 1:
ORA-01400: cannot insert NULL into ("ITA"."EMPL"."EID")
SQL> select * from empl;
ENAME EID
abcde 11
fghij 12
SQL> create table dept ( dname varchar(30) not null, did number(20) not null check
(did<10000));
Table created.
SQL> insert into dept values ('sales ',9876);
1 row created.
SQL> insert into dept values ('accounts',789645);
insert into dept values ('accounts',789645)
*
ERROR at line 1:
ORA-02290: check constraint (ITA.SYS_C003179) violated
SQL> select * from depts;
DNAME DID
sales 9876
marketing 5432
SQL> create table airports (aname varchar(30) not null , aid number(20) not null, acity
varchar(30), constraint chcn check( acity in ('chennai','hyderabad','bangalore')));
Table created.
SQL> insert into airports values( 'abcde', 100,'chennai');
1 row created.
1 row created.
SQL> insert into airports values( 'pqrst', 103,'mumbai');
insert into airports values( 'pqrst', 103,'mumbai')
*
ERROR at line 1:
ORA-02290: check constraint (IICSE110.CHCN) violated
SQL> select * from airports;
ANAME AID ACITY
chair 2005
table 2006
chair 2007
cse
ece
eee
mech
cse
cse
ece
eee
mech
3. UPDATE
SQL> update std set rollno=600 where name='abi';
1 row updated.
SQL> select *from std;
ROLLNO NAME DEPT TOTMARKS
32 admin 11
33 sales 11
35 manufac 12
36 pruchs
SQL> insert into deps values(37, 'pruchs',14);
insert into deps values(37, 'pruchs',14)
*
ERROR at line 1:
ORA-02291: integrity constraint (IICSE110.SYS_C009841) violated - parent key
not found
ON CASCADE
SQL> create table a (name varchar(10), ssn number(20), salary number(30), constraint qq
primary key(ssn));
Table created.
SQL> create table b (depno number(10), dname varchar(20), mssn number(10), constraint
ww primary key(depno), constraint wwc foreign key(mssn) references a (ssn) on delete
cascade);
Table created.
k1 11 100
k2 12 200
k3 13 200
SQL> select * from b;
DEPNO DNAME MSSN
34 sales 11
35 hq 12
36 mkt 13
SQL> alter table a disable constraint qq;
Table altered.
SQL> alter table a enable constraint qq;
Table altered.
SQL> delete from a where ssn=13;
1 row deleted.
SQL> select * from a;
NAME SSN SALARY
k1 11 100
k2 12 200
SQL> select * from b;
DEPNO DNAME MSSN
34 sales 11
35 hq 12
SQL> alter table b drop constraint wwe;
Table altered.
SQL> alter table b add constraint wweq foreign key(mssn) references a(ssn) on delete set
null;
Table altered.
SQL> delete from a where ssn=12;
1 row deleted.
SQL> select * from a;
NAME SSN SALARY
k1 11 100
SQL> select * from b;
DEPNO DNAME MSSN
34 sales 11
35 hq
Ex. No.: 3a SIMPLE QERIES WITH AGGREGATE FUNCTIONS
AGGREGATE FUNCTIONS
SQL> create table cse(name varchar(10), rno number(10), marks number);
Table created.
anu 1 56
asthika 2 78
balu 3 70
suganya 4 90
suguna 5 67
361
72.2
56
90
5
SQL> select count(*)
from cse
where marks>70;
COUNT(*)
2
GROUP BY CLAUSE
SQL>create table empp(empid number(20), empname varchar(20), dept varchar(10),
salary number(20));
ganga
harthik
prabu
prakash
roshan
shankar
warne
7 rows selected.
HAVING CLAUSE
SQL> select salary from empp group by salary having salary>10000;
SALARY
12000
25000
STRING FUNCTIONS
SQL> select upper(dept) DEPARTMENT from empp;
DEPARTMENT
MANAGEMENT
PRODUCTION
MANAGEMENT
PRODUCTION
MANAGEMENT
SALES
SALES
7 rows selected.
300 warne 5
345 harthik 7
245 prabu 5
360 roshan 6
256 ganga 5
456 shankar 7
557 prakash 7
7 rows selected.
Management
******DBMS
Oracle
DBMS******
PATTERN MATCHING
SQL> select * from empp;
EMPID EMPNAME DEPT SALARY
SQL> select empid, empname from empp where empname like '%ar%';
EMPID EMPNAME
300 warne
345 harthik
456 shankar
SQL> select empid, empname from empp where empname like '%h%';
EMPID EMPNAME
345 harthik
360 roshan
456 shankar
557 prakash
SQL> select empid, empname from empp where empname like 'pra%';
EMPID EMPNAME
245 prabu
557 prakash
DBMS**
**DBMS
DBMS
CONCATENATION OPERATOR
SQL> select empname ||' belongs to '|| dept ||' department' from empp;
EMPNAME||'BELONGSTO'||DEPT||'DEPARTMENT'
BETWEEN OPERATOR
SQL> select * from std where rollno between 200 and 400;
ROLLNO NAME DEPT TOTMARKS
-
200 amu ece 89
300 yoga eee 97
400 guna mech 77
IN PREDICATE
SQL> select * from std where dept in('cse', 'eee', 'mech');
ROLLNO NAME DEPT TOTMARKS
-
100 anu cse 67
300 yoga eee 87
400 guna mech 77
500 abi cse 88
NOT IN PREDICATE
SQL> select * from std where dept not in('cse', 'eee', 'mech');
LOGICAL OR OPERATOR
SQL> select rollno, name from std where dept='eee' or totmarks>80;
ROLLNO NAME
-
200 amu
300 yoga
500 abi
Ex. No.: 4 Query the database tables and explore sub queries and simple join
operations
NESTED QUERIES
1.SET MEMBERSHIP
SQL> create table stu(sid number(5),sname varchar(10),primary key(sname));
Table created.
SQL> select *from stu;
SID SNAME
101 balu
102 nanthu
103 amutha
104 yoga
105 maha
101 balu
102 nanthu
103 amutha
104 yoga
105 maha
1. IN OPERATION
SQL> select essn
from works_on
where (pno, hours) =all (select pno, hours
from works_on
where essn=333445555);
SNAME
nanthu
yoga
2.NOT IN OPERATION
SQL> select sname from stu where sname not in(select cname from ac);
SNAME
balu
amutha
maha
2.SET COMPARISON
SQL> create table empp(empid number(5),empname varchar(10),dept varchar(10),salary
number(10),primar
y key(empid));
Table created.
SQL> select *from empp;
EMPID EMPNAME DEPT SALARY
warne
management
roshan
ganga
warne
harthik
management
roshan
ganga
warne
management
roshan
ganga
4. GREATER THAN OR EQUAL TO ANY
SQL> select empname from empp where salary>=any(select salary from empp where
dept='production');
EMPNAME
warne
harthik
management
roshan
ganga
5. GREATER THAN ALL
SQL> select empname from empp where salary>all(select salary from empp where
dept='production');
EMPNAME
ganga
Harthik
7. EQUAL TO
SQL> select empname from empp where salary=(select max(salary)from empp where
salary<(select max(salary)from empp));
EMPNAME
Roshan
101 balu
102 nanthu
103 amutha
104 yoga
105 maha
SQL> select sname
from stu
where exists
(select *
from ac
where ac.cname=stu.sname);
SNAME
nanthu
yoga
2. NOT EXISTS
SQL> select sname from stu where not exists(select * from ac where ac.cname=sname);
SNAME
balu
amutha
maha
JOIN QUERIES
10 inventory hyd
20 finance bglr
30 HR Mumbai
Using Clause:
SQL> select eno,ename,job,dname,loc from employee e join dep d using(dno);
ENO ENAME JOB DNAME LOC
On Clause:
SQL> select * from employee join dep on(employee.dno= dep.dno);
ENO ENAME JOB DNAME LOC
Equijoin:
Using Clause:
SQL> select eno,ename,job,dname,loc from employee e join dep d using(dno);
ENO ENAME JOB DNAME LOC
- - -
111 saketh analyst inventory hyd
333 jagan manager inventory hyd
222 sandeep clerk finance bglr
On Clause:
SQL> select * from employee join dep on(employee.dno= dep.dno);
ENO ENAME JOB DNAME LOC
- - -
111 saketh analyst inventory hyd
333 jagan manager inventory hyd
222 ndeep clerk finance bglr
Non-Equijoin:
SQL> select eno,ename,job,dname,loc from employee e join dep d on (e.dno>d.dno);
ENO ENAME JOB DNAME LOC
- - -
222 sandeep clerk inventory hyd
444 madhu engineer inventory hyd
444 madhu engineer finance bglr
444 madhu engineer HR mumbai
Natural Join:
Outer Join:
5.1 Left Outer Join:
SQL> select eno,ename,job,dname,loc from employee e left outer join dep d on(e.dno=d.dno);
ENO ENAME JOB DNAME LOC
- - -
333 jagan manager inventory hyd
111 saketh analyst inventory hyd
222 sandeep clerk finance bglr
444 madhu engineer
Right Outer Join:
SQL> select eno,ename,job,dname,loc from employee e right outer join dep d on(e.dno=d.dno);
ENO ENAME JOB DNAME LOC
- - -
111 saketh analyst inventory hyd
222 sandeep clerk finance bglr
333 jagan manager inventory hyd
HR Mumbai
Full Outer Join:
SQL> select eno,ename,job,dname,loc from employee full outer join dep on(employee.dno =
dep.dno);
ENO ENAME JOB DNAME LOC
- - -
333 jagan manager inventory hyd
111 saketh analyst inventory hyd
222 sandeep clerk finance bglr
444 madhu engineer
HR mumbai
SQL> select eno,ename,job,dname,loc from employee natural right outer join dep;
ENO ENAME JOB DNAME LOC
- - -
111 saketh analyst inventory hyd
222 sandeep clerk finance bglr
333 jagan manager inventory hyd
HR mumbai
SQL> select eno,ename,job,dname,loc from employee natural left outer join dep;
ENO ENAME JOB DNAME LOC
- - -
333 jagan manager inventory hyd
111 saketh analyst inventory hyd
222 sandeep clerk finance bglr
444 madhu engineer
Ex. No.: 6a Study of PL/SQL Blocks
SQL> /
Enter value for sid: 2
old 2: sid number(10):=&sid;
new 2: sid number(10):=2;
Enter value for sname: anu
old 3: sname varchar(10):='&sname';
new 3: sname varchar(10):='anu';
Enter value for rating: 13
old 4: rating number(10):=&rating;
new 4: rating number(10):=13;
Enter value for age: 26
old 5: age number(10):=&age;
new 5: age number(10):=26;
PL/SQL procedure successfully completed.
SQL> select * from sailors;
SID SNAME RATING AGE
1 anitha 12 25
2 anu 13 26
PROCEDURE:
SQL> Create or replace procedure
1 fib(a in number)as
2 f0 number(2);
3 f1 number(2);
4 f2 number(2);
5 i number(2);
6 begin f0:=-1;
7 f1:=1;
8 for i in 1..a loop
9 f2:=f1+f0;
10 f0:=f1;
11 f1:=f2;
12 dbms_output.put_line(f2);
13 end loop;
14 end;
15 /
Procedure created.
To Execute:
SQL>Exec fib(5);
0
1
1
2
3
PL/SQL procedure successfully completed.
FUNCTIONS
1. Arithmetic operations
SQL>Create or replace function arith(a in out number,b in out number)return number as
1 c number;
2 begin
3 c:=a+b;
4 dbms_output.put_line(„Sum is‟||c);
5 c:=a-b;
6 dbms_output.put_line(„Difference is‟||c);
7 c:=a*b;
8 dbms_output.put_line(„Product is‟||c);
9 return c;
10 end;
11 /
Function created.
SQL> declare
2 x number(2);
3 y number(2);
4 z number(2);
5 begin
6 x:=&x;
7 y:=&y;
8 z:=arith(x,y);
9 end;
10 /
Enter value for x: 6
Old 6: x=&x;
New 6: x:=6;
Enter value for y: 4
Old 7: y:=&y;
New 7: y:=4;
Sum is 10
Difference is 2
Product is 24
PL/SQL procedure successfully completed.
2. Quadratic Functions
SQL> create or replace function quar(a in out number,b in out number,c in out number)return
2 number as
3 d number(2);
4 begin
5 d:=(b*b)-(4*a*c);
6 dbms_output.put_line(“the result is”||d);
7 return d;
8 end;
9 /
Function created.
SQL>declare
1 x number(2);
2 y number(2);
3 z number(2);
4 p number(2);
5 begin
6 x:=&x;
7 y:=&y;
8 z:=&z;
9 p:=quar(x,y,z);
10 end;
11 /
Enter value for x: 2
Old 7:x:=&x;
New 7: x:=2;
Enter value for y: 4
Old 8:y:=&y;
New 8:y:=4;
Enter value for z: 6
Old 9:z:=&z;
New 9:z:=6;
The result is -32
PL/SQL procedure successfully completed.
Ex. No: 7 Data Control Language and Transaction Control Language
Username: iicse24
SQL> select * from employee;
NAME SSN SALARY DNO
Username: iicse50
SQL> select * from employee;
select * from employee
*
ERROR at line 1:
ORA-00942: table or view does not exist
Username: iicse24
SQL> select * from USER_TAB_PRIVS_MADE;
GRANTEE TABLE_NAME
IICSE50 EMPLOYEE
IICSE24 INSERT NO NO
IICSE50 EMPLOYEE
IICSE24 SELECT NO NO
OWNER TABLE_NAME
IICSE45 LIBRARY
IICSE45 DELETE NO NO
IICSE45 LIBRARY
IICSE45 INSERT NO NO
IICSE45 LIBRARY
IICSE45 SELECT NO NO
OWNER TABLE_NAME
IICSE45 LIBRARY
IICSE45 UPDATE NO NO
Username: iicse50
SQL> select * from iicse24.employee;
select * from iicse24.employee
*
ERROR at line 1:
ORA-00942: table or view does not exist
TRANSACTION CONTROL LANGUAGE
SQL> commit;
Commit complete.
SQL> savepoint A;
Savepoint created.
SQL> savepoint B;
Savepoint created.
anitha 1
balaji 2
chitra 3
divya 4
david 5
deena 8
hema 9
indu 11
janani 13
9 rows selected.
SQL> rollback to B;
Rollback complete.
NAME ID
anitha 1
balaji 2
chitra 3
divya 4
david 5
deena 8
hema 9
indu 11
8 rows selected.
SQL> rollback to A;
Rollback complete.
NAME ID
anitha 1
balaji 2
chitra 3
divya 4
david 5
deena 8
hema 9
7 rows selected.
Ex. No.: 8 Triggers
101 ganga 88
102 abi 80
103 akash 99
104 yuvaraj 88
SQL> select *from student2;
RNO PERCENTAGE
101 88
102 80
103 99
104 88
Ex. No.: 9 View and index for database tables
VIEWS
SQL> select *from emm;
ENO ENAME SALARY DEPNO
7 ashik 23000 12
8 sadhik 34000 10
9 thilaga 24500 15
12 ashik production
10 sadhik service
15 thilga management
1) Creating views:
(i) Create a view named as emm1 on emm table which have eno,ename.
SQL> create view emm1 as select eno,ename from emm;
View created.
SQL> select *from emm1;
ENO ENAME
7 ashik
8 sadhik
9 thilaga
(ii) Create a view named as emm2 from emm table having eno without duplicates:
SQL> create view emm2 as select distinct depno from emm;
View created.
SQL> select *from emm2;
DEPNO
10
12
15
(iii) Create the view to view emm details where depno is 10;
SQL> create view emm3 as select *from emm where depno=10;
View created.
SQL> select *from emm3;
ENO ENAME SALARY DEPNO
8 sadhik 34000 10
(iv) Select the records from the view table
SQL> create view emm11 as select *from em_dep where ename like 's%';
View created.
SQL> select *from emm11;
ENO ENAME SALARY DEPNO DEPNAME
Index dropped.
Ex. No.: 10 Create an XML database and validate it using XML schema
Program:
XML File (books.xml)
<?xml version="1.0"?>
<x:books xmlns:x="urn:books">
<book id="bk001">
<author>Writer</author>
<title>The First Book</title>
<genre>Fiction</genre>
<price>44.95</price>
<pub_date>2000-10-01</pub_date>
<review>An amazing story of nothing.</review>
</book>
<book id="bk002">
<author>Poet</author>
<title>The Poet's First Poem</title>
<genre>Poem</genre>
<price>24.95</price>
<pub_date>2000-10-01</pub_date>
<review>Least poetic poems.</review>
</book>
</x:books>
XSD File (books.xsd)
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:books"
xmlns:bks="urn:books">
<xsd:element name="books" type="bks:BooksForm"/>
<xsd:complexType name="BooksForm">
<xsd:sequence>
<xsd:element name="book"
type="bks:BookForm"
minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="BookForm">
<xsd:sequence>
<xsd:element name="author" type="xsd:string"/>
<xsd:element name="title" type="xsd:string"/>
<xsd:element name="genre" type="xsd:string"/>
<xsd:element name="price" type="xsd:float" />
<xsd:element name="pub_date" type="xsd:date" />
<xsd:element name="review" type="xsd:string"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string"/>
</xsd:complexType>
</xsd:schema>
Ex.No.: 11 Create Document, column and graph based data using NOSQL database tools
2.show in folder > double click on your node js msi file> next > next > custom set up > node js run time (4
folder) > will be install on local hard drive > next >install.
Install mongo db
5. next>complete>next>install.
//
Cmdline
//
2.cd foldername
3.npm init -y
5.goto vs code
file>open folder>fodername
Select folder in c:
7.open mongo db
compass>connect>
8.cmd
9.node filename.js
Npm i mongoose)
Cd sample
10.npm i mongoose
To paste code
12. To run: node
index.js
CREATE
FOLDER IN C:/
Run mongodb
compass
Using command
mkdir fodername
and do
npm init -y
vs code> new >file> open folder > fodername >
1.create file called server.js
//And paste the below code
const express =
require("express");
const app = express();
const TodoTask = require("./models/TodoTask");
mongoose
.connect('mongodb://127.0.0.1:27017/myapp')
.catch((e) => {
console.log(e);
})
.then((_) => {
console.log("Connected to db!");
});
//POST METHOD
app.post("/", async (req, res) => {
const todoTask = new TodoTask({
content: req.body.content,
});
try {
await todoTask.save();
res.redirect("/");
} catch (err) {
res.redirect("/");
}
});
RESERVATION: