Database Management Systems Lab Manual
Database Management Systems Lab Manual
com
LAB MANUAL
FOR
DATABASE MANAGEMENT
SYSTEM
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
L T P Class Work: 25
- - 2 Exam: 25
Total: 50
Duration of Exam: 3
Hrs.
I. Create a database and write the programs to carry out the following operation :
Usage of S/w:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
The fundamental concepts and algorithms covered are based on those used in
existing commercial or experimental database systems. Our aim is to present
these concepts and algorithms in general setting.
Objectives
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Software Required:
1. VB, ORACLE and/or DB2
2. VB, MSACCESS
3. ORACLE, D2K
4. VB, MS SQL SERVER 2000
Hardware Required:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
View definition-
The SQL DDL includes commands for defining views.
Transaction Control- SQL includes for specifying the beginning and ending of
transactions.
Integrity-
The SQL DDL includes commands for specifying integrity constraints that the data
stored in the database must specify. Updates that violate integrity constraints are allowed.
Authorization-
The SQL DDL includes commands for specifying access rights to relations and views.
The SQL DDL allows specification of not only a set of relations but also information
about each relation, including-
• Schema for each relation
• The domain of values associated with each attribute.
• The integrity constraints.
• The set of indices to be maintained for each relation.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Syntax-
Create table tablename
(columnname datatype(size), columnname datatype(size));
Syntax-
CREATE TABLE TABLENAME
[(columnname, columnname, ………)]
AS SELECT columnname, columnname……..FROM tablename;
Syntax-
INSERT INTO tablename
[(columnname, columnname, ………)]
Values(expression, expression);
Syntax-
INSERT INTO tablename
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Syntax-
INSERT INTO tablename
SELECT columnname, columnname……..
FROM tablename
WHERE columnname= expression;
Syntax-
SELECT * FROM tablename;
Syntax-
SELECT columnname, columnname, ….
FROM tablename;
Syntax-
SELECT DISTINCT columnname, columnname
FROM tablename;
Syntax-
SELECT columnname, columnname
FROM tablename
WHERE searchcondition;
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Assignment No.1
Q1. Create the following tables:
i) client_master
ii) Product_master
Columnname datatype size
Product_no varchar2
Description varchar2
Profit_percent number
Unit_measure varchar2
Qty_on_hand number
Reoder_lvl number
Sell_price number
Cost_price number
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Q3:- On the basis of above two tables answer the following Questionries:
i) Find out the names of all the clients.
ii) Retrieve the list of names and cities of all the clients.
iii) List the various products available from the product_master table.
iv) List all the clients who are located in Bombay.
v) Display the information for client no 0001 and 0002.
vi) Find the products with description as ‘1.44 drive’ and ‘1.22 Drive’.
vii) Find all the products whose sell price is greater then 5000.
viii) Find the list of all clients who stay in in city ‘Bombay’ or city ‘Delhi’ or
‘Madras’.
ix) Find the product whose selling price is greater than 2000 and less than or
equal to 5000.
x) List the name, city and state of clients not in the state of ‘Maharashtra’.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Deletion Operation:-
A delete query is expressed in much the same way as Query. We can delete whole tuple (
rows) we can delete values on only particulars attributes.
Syntax:
Delete from tablename :
+ Addition - Subtraction
* multiplication ** exponentiation
/ Division () Enclosed operation
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Renaming columns used with Expression Lists: - The default output column names can
be renamed by the user if required
Syntax:
Logical Operators:
The logical operators that can be used in SQL sentenced are
Pattern Searching:
The most commonly used operation on string is pattern matching using the operation
‘like’ we describe patterns by using two special characters.
• Percent (%) ; the % character matches any substring we consider the following
examples.
• ‘Perry %’ matches any string beginning with perry
• ‘% idge % matches any string containing’ idge as substring.
• ‘ - - - ‘ matches any string exactly three characters.
• ‘ - - - % matches any string of at least of three characters.
Oracle functions:
Functions are used to manipulate data items and return result. function follow the format
of function _name (argument1, argument2 ..) .An arrangement is user defined variable or
constant. The structure of function is such that it accepts zero or more arguments.
Examples:
Avg return average value of n
Syntax:
Avg ([distinct/all]n)
Min return minimum value of expr.
Syntax:
MIN((distinct/all )expr)
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Syntax:
Max ([distinct/all]expr)
Sum Returns sum of values of n
Syntax:
Sum ([distinct/all]n)
Syntax:
Select columnname, columnname
From table
Order by columnname;
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Assignment No. # 2
Question.1 Using the table client master and product master answer the following
Questionnaires.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
i. Column Level Constraints: If the constraints are defined along with the column
definition, it is called a column level constraint.
ii. Table Level Constraints: If the data constraint attached to a specify cell in a
table reference the contents of another cell in the table then the user will have to
use table level constraints.
Null Value Concepts:- while creating tables if a row locks a data value for
particular column that value is said to be null . Column of any data types may
contain null values unless the column was defined as not null when the table was
created
Syntax:
Primary Key: primary key is one or more columns is a table used to uniquely
identity each row in the table. Primary key values must not be null and must be
unique across the column. A multicolumn primary key is called composite
primary key.
Default value concept: At the line of cell creation a default value can be assigned
to it. When the user is loading a record with values and leaves this cell empty, the
DBA will automatically load this cell with the default value specified. The data
type of the default value should match the data type of the column
Syntax:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Syntax :
Create table table name
(columnname datatype (size) references another table name);
Syntax :
Create table name
(columnname datatype (size)….
primary key (columnname);
foreign key (columnname)references table name);
Check Integrity Constraints: Use the check constraints when you need to
enforce integrity rules that can be evaluated based on a logical expression
following are a few examples of appropriate check constraints.
• A check constraints name column of the client_master so that the name is
entered in upper case.
• A check constraint on the client_no column of the client _master so that
no client_no value starts with ‘c’
Syntax:
Create table tablename
(columnname datatype (size) CONSTRAINT constraintname)
Check (expression));
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
ii. Sales_order
Columnname Datatype Size Attributes
S_order_no varchar2 6 Primary/first letter must be 0
S_order_date Date 6 Primary key reference clientno
of client_master table
Client_no Varchar2 25
Dely_add Varchar2 6
Salesman_no Varchar2 6 Foreign key references
salesman_no of
salesman_master table
Dely_type Char 1 Delivery part(p)/full(f),default f
Billed_yn Char 1
Dely_date Date Can not be lessthan
s_order_date
Order_status Varchar2 10 Values (‘in
process’;’fulfilled’;back
order’;’canceled
I. Sales_order_details
Column Datatype Size Attributes
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Insert the following data into their respective tables using insert statement:
Salesman_ Salesman Address City Pin State Salamt Tgt_to_get Ytd Rem
no name code Sales
500001 Kiran A/14 Bom 400002 Mah 3000 100 50 Good
worli bay
500002 Manish 65,narim Bom 400001 Mah 3000 200 100 Good
an bay
500003 Ravi P-7 Bom 400032 Mah 3000 200 100 Good
Bandra bay
500004 Ashish A/5 Bom 400044 Mah 3500 200 150 Good
Juhu bay
(ii)
Data for salesorder table:
S_orderno S_orderdate Client no Dely Bill Salesman no Delay Orderstatus
type yn date
019001 12-jan-96 0001 F N 50001 20-jan- Ip
96
019002 25-jan-96 0002 P N 50002 27-jan- C
96
016865 18-feb-96 0003 F Y 500003 20-feb- F
96
019003 03-apr-96 0001 F Y 500001 07-apr- F
96
046866 20-may-96 0004 P N 500002 22- C
may-96
010008 24-may-96 0005 F N 500004 26- Ip
may-96
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
(iii)
Data for sales_order_details table:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
The following tasks you can perform through alter table command.
NOTE: Oracle not allow constraints defined using the alter table, if the data in the table,
violates such constraints.
Syntax:
DROP TABLE tablename:
You can also define integrity constraints using the constraint clause in the ALTER
TABLE command. The following examples show the definitions of several integrity
constraints.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
You can drop an integrity constraint if the rule that if enforces is no longer true or if the
constraint is no longer needed. Drop the constraint using the ALTER TABLE command
with the DROP clause. The following examples illustrate the dropping of integrity
constraints.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Assignment No.4
Question 1. Create the following tables:
Challan_Header
Column name data type size Attributes
Challan_no varchar2 6 Primary key
s_order_no varchar2 6 Foreign key references s_order_no of
sales_order table
challan_date date not null
billed_yn char 1 values (‘Y’,’N’). Default ‘N’
Q2. Insert the following values into the challan header and challan_details tables:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
The tables that have to be joined are specified in the FROM clause and the
joining attributes in the WHERE clause.
1. Cartesian product:-
Consider two table student and course
Select B.*,P.*
FROM student B, course P;
2. INNER JOIN:
Cartesian product followed by selection
Select B.*,P.*
FROM student B, Course P
WHERE B.course # P.course # ;
Exam:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Select B.*,P.*
From student B RIGHT JOIN course P
B.course# = P course # ;
ASSIGNMENT NO. 5
OBJECTIVE: Answer the following Queries:
1. Find out the product which has been sold to ‘Ivan Sayross.’
2. Find out the product and their quantities that will have do delivered.
3. Find the product_no and description of moving products.
4. Find out the names of clients who have purchased ‘CD DRIVE’
5. List the product_no and s_order_no of customers haaving qty ordered less than 5
from the order details table for the product “1.44 floppies”.
6. Find the products and their quantities for the orders placed by ‘Vandan Saitwal ’
and “Ivan Bayross”.
7. Find the products and their quantities for the orders placed by client_no “
C00001” and “C00002”
8. Find the order No,, Client No and salesman No. where a client has been received
by more than one salesman.
9. Display the s_order_date in the format “dd-mm-yy” e.g. “12- feb-96”
10. Find the date , 15 days after date.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Assignment No.6
Objective- Answer the following Queries:
Q1.- Print the description and total quantity sold for each product.
Q2.- Find the value of each product sold.
Q3.- Calculate the average quantity sold for each client that has a maximum order
value of
15000.
Q4.- Find out the products which has been sold to Ivan.
Q5.- Find the names of clients who have ‘CD Drive’.
Q6.- Find the products and their quantities for the orders placed by ‘Vandana’ and
‘Ivan’.
Q8.- Select product_no, product description and qty ordered for each product.
Q9.- Display the order number and day on which clients placed their order.
Q10.- Display the month and Date when the order must be delivered.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Output: = Records only in Query one + records only in Query two + A single set of
records with is common in the both Queries.
Syntax:
Intersect Clause: The use can put together multiple Queries and their output using the
interest clause. The final output of the interest clause will be :
Syntax:
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
MINUS CLAUSE:- The user can put together multiple Queries and combine their output
= records only in Query one
Syntax:
SELECT columnname, columnname
FROM tablename ;
MINUS
SELECT columnname, columnname
FROM tablename ;
Assignment NO.7
Objective: Answer the following Queries:
Question.
1. Find the product_no and description of non- moving products.
2. Find the customer name, address, city and pincode for the client who has placed
order no “019001”
3. Find the client names who have placed order before the month of may 96.
4. Find out if product “1.44 Drive” is ordered by only client and print the client_no
name to whom it was sold.
5. find the names of client who have placed orders worth Rs.10000 or more.
6. Select the orders placed by ‘Rahul Desai”
7. Select the names of persons who are in Mr. Pradeep’s department and who have
also worked on an inventory control system.
8. Select all the clients and the salesman in the city of Bombay.
9. Select salesman name in “Bombay” who has atleast one client located at
“Bombay”
10. Select the product_no, description, qty_on-hand,cost_price of non_moving items
in the product_master table.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
1. The DBA stores the views as a definition only. Hence there is no duplication of data.
2. Simplifies Queries.
3. Can be Queried as a base table itself.
4. Provides data security.
5. Avoids data redundancy.
Creation of Views:-
Syntax:-
CREATE VIEW viewname AS
SELECT columnname,columnname
FROM tablename
WHERE columnname=expression_list;
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Syntax:-
CREATE VIEW viewname AS
SELECT newcolumnname….
FROM tablename
WHERE columnname=expression_list;
Syntax:-
SELECT columnname, columnname
FROM viewname
WHERE search condition;
Destroying a view-
Syntax:-
DROP VIEW viewname;
Assignment No # 8
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
The objective of the lab is to create a form using a parent table and a child table to take
advantage of the schema’s relationships.
To delete a record, you must first delete the details, save the change, then delete the
master and save. After you make any change, save the data. If there is any problem with
integrity, the record won’t save.
If you have two table joined by a relationship table, the relationship table MUST contain
valid data or you will not be able to add data to the detail table.
IE – If you have two tables and one relation table such as – Students – Have – Marks
The have table would include at least one column, a StudentID. To input a mark, the
StudentID must be filled in the Students table, a matching StudentID would have to exist
in the Have table, and a valid MarkID must exist in the marks table that = a StudentID in
the Have table which = a StudentID in the Students table.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
References
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
DECLARE
Declarations of memory variables used later
BEGIN
SQL executable statements for manipulating table data.
EXCEPTIONS
SQL and/or PL.SQL code to handle errors.
END;
Example: Write the following code in the PL/SQL block to display message to user
DBMS_OUTPUT.PUT_LINE(‘Display user message’);
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
ELSE
<Action>
ENDIF;
The WHILE LOOP:
Syntax:
WHILE <condition>
LOOP
<Action>
END LOOP;
The GOTO statement: The goto statement allows you to change the flow of control
within a PL/SQL Block.
Assignment No.1
Q4. WAP in PL/SQL to inverse a number, eg. Number 5639 when inverted must be
display
output 9365.
Q5. WAP in PL/SQL for changing the price of product ‘P00001’ to 4000 if the price is
less than
4000 in product_master table. The change is recorded in the old_price_table along
with
product_no and the date on which the price was changed last.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Explicit Cursor- You can explicitly declare a cursor to process the rows individually.
A cursor declared by the user is called Explicit Cursor. For Queries that return more
than one row, You must declare a cursor explicitly.
The data that is stored in the cursor is called the Active Data set. The size of the cursor in
memory is the size required to hold the number of rows in the Active
Why use an Explicit Cursor- Cursor can be used when the user wants to process
data one row at a time.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
The General Syntax to Fetch the records from the cursor is as follows:-
Fetch cursorname into variable1,variable2,______
Closing a Cursor:-
The General Syntax to Close the cursor is as follows:-
Close <cursorname>;
Database Triggers:-
Database triggers are procedures that are stored in the database and are implicitly
executed(fired) when the contents of a table are changed.
Types of Triggers:-
Using the various options , four types of triggers can be created:-
1. Before Statement Trigger:- Before executing the triggering statement, the
trigger action is executed.
2. Before Row Trigger:- Before modifying the each row affected by the triggering
statement and before appropriate integrity constraints, the trigger is executed if
the trigger restriction either evaluated to TRUE or was not included.’
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
3. After Statement Trigger:- After executing the triggering statement and applying
any deferred integrity constraints, the trigger action is executed.
4. After row Trigger:- After modifying each row affected by the triggering
statement and possibly applying appropriate integrity constraints, the trigger
action is executed for the current row if the trigger restriction either evaluates to
TRUE or was not included.
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
• What is database?
• What is DBMS?
• What is a Database system?
• What are the Advantages and disadvantages of DBMS?
• What is a view? How it is related to data independence?
• What is E-R model?
• What is an Entity?
• What is an Entity set?
• What is DDL (Data Definition Language)?
• What is DML (Data Manipulation Language)?
• What is a query?
• What do you mean by Correlated subquery?
• What are the unary operations in Relational Algebra?
• Are the resulting relations of PRODUCT and JOIN operation the same?
• Define SQL and state the differences between SQL and other
conventional programming Languages
• What is database Trigger?
• What are cursors give different types of cursors?
• What operator performs pattern matching?
• What operator tests column for the absence of data?
• Which command executes the contents of a specified file?
• What are the privileges that can be granted on a table by a user to others?
• What command is used to get back the privileges offered by the GRANT
command?
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Specworld.in jntuworld.xyz
smartworld.asia smartzworld.com
Specworld.in jntuworld.xyz