Dbms Prac Ans
Dbms Prac Ans
1.
2.
3.
4.
5.
S2)
1.
2.
3.
4.
5.
S3)
1.
2.
3.
4.
5.
S5)
1.
2.
3.
4.
5.
S6)
dname VARCHAR(50),
mgreno INT
);
ename VARCHAR(50),
bdate DATE,
title VARCHAR(50),
salary DECIMAL(10,2),
deptno INT,
);
pname VARCHAR(50),
budget DECIMAL(10,2),
deptno INT,
);
eno INT,
pno INT,
responsibility VARCHAR(50),
hours INT,
);
INSERT INTO emp (eno, ename, bdate, title, salary, deptno) VALUES
1.
2.
3.
4.
5.
S7}
dname VARCHAR(50),
mgreno INT
);
ename VARCHAR(50),
bdate DATE,
title VARCHAR(50),
dno INT,
);
pname VARCHAR(50),
budget DECIMAL(10, 2),
dno INT,
);
eno INT,
pno INT,
responsibility VARCHAR(50),
hours INT,
);
INSERT INTO emp (eno, ename, bdate, title, salary, dno) VALUES
1.
2.
3.
4.
5.
S8)
ename VARCHAR(50),
bdate DATE,
title VARCHAR(50),
dno INT,
);
pname VARCHAR(50),
dno INT,
);
dname VARCHAR(50),
mgreno INT
);
eno INT,
pno INT,
resp VARCHAR(50),
hours INT,
);
-- Insert values into 'emp' table
VALUES
VALUES
VALUES
VALUES
2.
3.
4.
5.
SELECT emp.*
FROM emp
S9)
street VARCHAR(100),
city VARCHAR(100)
);
city VARCHAR(100)
);
employee_name VARCHAR(50),
company_name VARCHAR(100),
);
employee_name VARCHAR(50),
manager_name VARCHAR(50),
);
1.
2.
3,
4.
5.
S10)
1.
2.
3.
5.
4.
S11)
EmployerId INT,
Lastname VARCHAR(50),
Firstname VARCHAR(50),
Middlename VARCHAR(50),
JobId INT,
ManagerId INT,
Hiredate DATE,
Salary INT,
DepartmentId INT
);
INSERT INTO Employee (EmployerId, Lastname, Firstname, Middlename, JobId, ManagerId, Hiredate,
Salary, DepartmentId)
VALUES
(7369, 'Smith', 'Jon', 'Q', 667, 7902, '2021-12-17', 800, 10),
1)
2.
3.
4.
SELECT EmployerId, Lastname, Firstname, Middlename, JobJd, ManagerJd, Hiredate, Salar * 1.1 AS
Salar, Department_id
FROM Employee;
5.
S12)
id INT AUTO_INCREMENT,
name VARCHAR(50),
);
2.
3.
4.
5.
S13)
2.
3.
4.
5.
S14)
product_name VARCHAR(255),
supplier_name VARCHAR(255),
unit_price DECIMAL(10, 2)
);
product_id INT,
product_name VARCHAR(255),
supplier_name VARCHAR(255),
);
BEGIN
END;
S15)
create a table called "account" with columns "accno" and "amount" in SQL:
create a trigger on the "account" table that will check the new inserted amount before an
update and perform certain actions based on its value:
BEGIN
SET NEW.amount = 0;
END IF;
END;
S16)
BEGIN
ELSE
SET maxNum = num3;
END IF;
END;
mark1 INT,
mark2 INT,
mark3 INT,
mark4 INT,
student_name VARCHAR(50)
);
VALUES
To list the average marks of each student, you can use the following query:
FROM studentdata;
Function to calculate the average of marks:
S17)
name VARCHAR(50),
marks INT
);
('John', 85),
('Alice', 92),
('Bob', 78),
('Emily', 68),
('David', 95),
('Sarah', 87),
('Michael', 72),
('Emma', 90),
('Daniel', 83),
('Olivia', 79);
DELIMITER //
BEGIN
DECLARE cur CURSOR FOR SELECT id, name, marks FROM students;
OPEN cur;
read_loop: LOOP
IF done THEN
LEAVE read_loop;
END IF;
ELSE
END IF;
SELECT CONCAT('Student Name: ', student_name, ', Grade: ', student_grade) AS result;
END LOOP;
CLOSE cur;
END //
DELIMITER ;
CALL calculate_grade();
S18)
RollNo INT,
mark1 INT,
mark2 INT,
mark3 INT,
mark4 INT
);
-- Insert sample values
DELIMITER //
BEGIN
DECLARE cur CURSOR FOR SELECT RollNo, mark1, mark2, mark3, mark4 FROM student;
OPEN cur;
read_loop: LOOP
IF done = 1 THEN
LEAVE read_loop;
END IF;
SELECT CONCAT('Roll No: ', rollNo, ', Average Marks: ', average) AS Result;
END LOOP;
CLOSE cur;
END //
DELIMITER ;
CALL CalculateAverage();
S20)
BEGIN
IF num % 2 = 0 THEN
ELSE
END IF;
END //
DELIMITER ;
BEGIN
IF num % 2 = 0 THEN
ELSE
END IF;
RETURN result;
END //
DELIMITER ;