Dbms Assignment
Dbms Assignment
NAWABGANJ, KANPUR
LAB RECORD
Submitted
SubmittedTo:
To: Submitted
Submitted By: By:
Sonia Gupta Ma’am Anuj Srivastava
Sonia Gupta Ma’am Prashant Kumar
Department of SR No: 200108023
SR No: 200108041
Department of Computer Science
Computer Science and Engineering
and Engineering Year: 3rd B.Tech
Year: 3rd B.Tech
Information
Branch: Information Technology
TTechnology
1. Write the queries for Data Definition and Data Manipulation language.
1. CREATE
2. ALTER
Output:
Table 'Employee_Info' doesn't exist
2. UPDATE
UPDATE Employee_Info
SET EmployeeName = 'Laila', City= 'Ahmedabad'
WHERE EmployeeID = 6;
3. DELETE
Output:
+----+----------+-----+---------+---------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+---------+---------+
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
+----+----------+-----+---------+---------+
2 rows in set (0.00 sec)
3. Write SQL queries using SQL operators (Between…. AND, IN(List), Like,
ISNULL and withnegating expressions).
AND
SELECT * FROM employee WHERE emp_city = 'Allahabad' AND emp_country
= 'India';
IN
SELECT * FROM employee WHERE emp_city IN ('Allahabad', 'Patna');
LIKE
SELECT * FROM employee WHERE emp_city LIKE 'P%';
BETWEEN
SELECT * FROM employee WHERE emp_id BETWEEN 101 AND 104;
4. Write SQL query using character, number, date and group functions.
CHARACTER FUNCTIONS :
LOWER
UPPER
Input2: SELECT UPPER('dbms$508%7') FROM DUAL;
Output2: DBMS$508%7
INITCAP
LENGTH
NUMBER FUNCTIONS:
ABS
CEIL(): It returns the smallest integer value that is greater than or equal
to a number.
Syntax: SELECT CEIL(25.75);
Output: 26
GROUP FUNCTIONS
SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;
5. Write SQL queries for Relational Algebra (UNION, INTERSECT, and
MINUS, etc.).
Union Operator:
SELECT * FROM BOOKS
UNION
SELECT * FROM MOVIES
Output:
Minus Operator:
SELECT * FROM BOOKS
MINUS
SELECT * FROM MOVIES
Output:
Intersect Operator:
SELECT * FROM BOOKS
INTERSECT
SELECT * FROM MOVIES
Output:
6. Write SQL queries for extracting data from more than one table
(Equi-Join, Non-Equi-Join, Outer Join)
Tables:
Equi-Join:
SELECT * FROM state
JOIN city
ON state.State_ID = city.City_ID;
Output:
Non Equi-Join:
Tables:
Query:
SELECT * FROM test1,test2 WHERE test1.SNo > test2.SNo;
Output:
7. Write SQL queries for sub queries, nested queries.
SUB QUERIES::
SELECT STATEMENT
SQL> SELECT *
FROM CUSTOMERS
WHERE ID IN (SELECT ID
FROM CUSTOMERS
WHERE SALARY > 4500) ;
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 35 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
UPDATE STATEMENT
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 35 | Ahmedabad | 125.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 2125.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
NESTED QUERIES ::
SELECT job_id,AVG(salary)
FROM employees
GROUP BY job_id
HAVING AVG(salary)<
(SELECT MAX(AVG(min_salary))
FROM jobs
WHERE job_id IN
(SELECT job_id FROM job_history
WHERE department_id
BETWEEN 50 AND 100)
GROUP BY job_id);
Output
JOB_ID AVG(SALARY)
---------- -----------
IT_PROG 5760
AC_ACCOUNT 8300
ST_MAN 7280
AD_ASST 4400
SH_CLERK 3215
FI_ACCOUNT 7920
PU_CLERK 2780
SA_REP 8350
MK_REP 6000
ST_CLERK 2785
HR_REP 6500
8. Write programs by the use of PL/SQL.
#FOR LOOP
PL/SQL Block
Output Table
PL/SQL Block
Output Table
SQL> SELECT * FROM temp ORDER BY col1 DESC;
Table:
Queries:
INSERT INTO class VALUES(5, 'Rahul');
COMMIT;
UPDATE class SET name = 'Abhijit' WHERE id = '5';
SAVEPOINT A;
INSERT INTO class VALUES(6, 'Chris');
SAVEPOINT B;
INSERT INTO class VALUES(7, 'Bravo');
SAVEPOINT C;
SELECT * FROM class;
Output:
RollBack:
ROLLBACK TO B;
SELECT * FROM class;
Output:
10. Create VIEWS, CURSORS, and TRIGGRS & write ASSERTIONS.
#VIEWS::
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name
WHILE @@FETCH_STATUS = 0
BEGIN
SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName
CLOSE db_cursor
DEALLOCATE db_cursor
#TRIGGRS::
mysql> insert into Student values(0, "ABCDE", 20, 20, 20, 0, 0);
Query OK, 1 row affected (0.09 sec)
mysql> select * from Student;
+-----+-------+-------+-------+-------+-------+------+
| tid | name | subj1 | subj2 | subj3 | total | per |
+-----+-------+-------+-------+-------+-------+------+
| 100 | ABCDE | 20 | 20 | 20 | 60 | 36 |
+-----+-------+-------+-------+-------+-------+------+
#ASSERTIONS
andD.account# = A.account#
6. Click Apply
7. The Departments report is added to the User Defined Reports tree.