DBMS 5
CREATE TABLE Employee (
E_id INT PRIMARY KEY,
E_name VARCHAR(255),
Age INT,
Salary DECIMAL(10, 2)
);
INSERT INTO Employee (E_id, E_name, Age, Salary) VALUES (1, 'John Doe',
30, 50000.00);
INSERT INTO Employee (E_id, E_name, Age, Salary) VALUES (2, 'Jane Smith',
25, 60000.00);
INSERT INTO Employee (E_id, E_name, Age, Salary) VALUES (3, 'Alice
Johnson', 35, 70000.00);
DELIMITER //
CREATE PROCEDURE extract_employee_values()
BEGIN
DECLARE done BOOLEAN DEFAULT FALSE;
DECLARE emp_id INT;
DECLARE emp_name VARCHAR(255);
DECLARE emp_age INT;
DECLARE emp_salary DECIMAL(10, 2);
DECLARE cur CURSOR FOR
SELECT E_id, E_name, Age, Salary FROM Employee;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN cur;
emp_loop: LOOP
FETCH cur INTO emp_id, emp_name, emp_age, emp_salary;
IF done THEN
LEAVE emp_loop;
END IF;
-- Do something with the extracted values
-- For example, you can print them
SELECT emp_id, emp_name, emp_age, emp_salary;
END LOOP;
CLOSE cur;
END //
DELIMITER ;
CALL extract_employee_values();