noice23

dbm

May 13th, 2025
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 6.51 KB | None | 0 0
  1. 1.
  2. CREATE TABLE employee(empno int,ename VARCHAR(50),job VARCHAR(30),manager_no
  3. int,sal int,commission FLOAT);
  4.  
  5. INSERT INTO employee1 VALUES(2,"shashi","coordinator",10043,80000,1500.00);
  6.  INSERT INTO employee1 VALUES(3,"mamatha","academic head",10044,85000,2500.00);
  7.  INSERT INTO employee1
  8. VALUES(1,"gayathri","principal",10042,90000,2000.00);
  9. COMMIT;
  10. SELECT* FROM employee;
  11.  
  12. ALTER TABLE employee1 add constraint primary key(empno);
  13. ALTER TABLE employee1 modify column empno int NOT NULL;
  14.  
  15. : INSERT INTO employee1 VALUES(7,NULL,NULL,NULL,NULL,NULL);
  16. SELECT * FROM employee1;
  17. INSERT INTO employee1 VALUES(NULL,NULL,NULL,NULL,NULL,NULL);
  18.  
  19.  
  20. 2.
  21. CREATE TABLE employee
  22. (empno NUMBER,
  23. ename VARCHAR2(10),
  24. job VARCHAR2(10),
  25. mgr NUMBER,
  26. sal NUMBER);
  27.  
  28. ALTER TABLE employee add(commission NUMBER);
  29. OR
  30. ALTER TABLE employee add commission int;
  31.  
  32. INSERT INTO employee VALUES(101,'abhi','manager',1234,10000,'70');
  33. (x5)
  34.  
  35. SET linesize 10000;
  36. SELECT *FROM emplyoee;
  37.  
  38. UPDATE employee SET job='trainee' WHERE empno=103;
  39. SELECT * FROM employee;
  40.  
  41. ALTER TABLE employee rename column mgr TO manager_no;
  42. DESC employee;
  43.  
  44. DELETE employee WHERE empno=105;
  45. SELECT * FROM employee;
  46.  
  47.  
  48. 3.
  49. CREATE TABLE employee
  50. (
  51. e_id int,
  52. ename VARCHAR2(50),
  53. Age int,
  54. sal FLOAT);
  55. DESC employee;
  56.  
  57. INSERT INTO...
  58.  
  59. SELECT COUNT(ename) AS employeenames FROM employee;
  60. OR
  61. SELECT COUNT(ename) AS total_employee FROM employee;
  62.  
  63. SELECT MAX(age) FROM employee;
  64.  
  65. SELECT MIN(age) FROM employee;
  66.  
  67. SELECT * FROM employee3 ORDER BY salary ASC;
  68. OR
  69. SELECT ename, salary FROM employee ORDER BY salary;
  70.  
  71. SELECT SUM(salary) FROM employee3 GROUP BY age;
  72. OR
  73. SELECT salary COUNT(*) AS emp_count FROM employee GROUP BY salary;
  74.  
  75.  
  76. 4.
  77. CREATE TABLE customers (
  78.  id int primary key,
  79.  name VARCHAR(255),
  80.  age int,
  81.  address VARCHAR(255),
  82.  salary DECIMAL(10, 2) );
  83. CREATE OR REPLACE TRIGGER trg_customers_salary_diff
  84. After INSERT OR UPDATE OR DELETE
  85. ON customers
  86. FOR each ROW
  87. DECLARE
  88.  old_salary NUMBER;
  89.  new_salary NUMBER;
  90.  salary_diff NUMBER;
  91.  BEGIN
  92. -- handle insert operation
  93.  IF inserting THEN
  94.  old_salary := NULL;
  95.  new_salary := :NEW.salary;
  96.  salary_diff := new_salary;
  97.  DBMS_OUTPUT.put_line('inserted row: salary = ' || new_salary);
  98.  
  99.  -- handle delete operation
  100.  ELSIF deleting THEN
  101.  old_salary := :old.salary;
  102.  new_salary := NULL;
  103.  salary_diff := old_salary;
  104.  DBMS_OUTPUT.put_line('deleted row: salary = ' || old_salary);
  105.  
  106.  -- handle update operation
  107.  ELSIF updating THEN
  108.  old_salary := :old.salary;
  109.  new_salary := :NEW.salary;
  110.  salary_diff := new_salary - old_salary;
  111.  DBMS_OUTPUT.put_line('updated row: old salary = ' || old_salary || ', new salary = ' ||
  112. new_salary || ', difference = ' || salary_diff);
  113.  END IF;
  114. END;/
  115.  
  116. SET SERVEROUTPUT ON;
  117.  
  118. INSERT INTO CUSTOMERS VALUES (1,'John Doe', 30, '123 Elm St', 50000.00);
  119. Inserted ROW: Salary = 50000.00
  120. UPDATE CUSTOMERS SET SALARY = 55000.00 WHERE NAME = 'John Doe';
  121. DELETE FROM CUSTOMERS WHERE NAME = 'John Doe';
  122.  
  123.  
  124. 5.
  125. CREATE TABLE Employee (
  126.  E_id NUMBER PRIMARY KEY,
  127.  E_name VARCHAR2(255),
  128.  Age NUMBER,
  129.  Salary NUMBER );
  130. INSERT INTO Employee (E_id, E_name, Age, Salary) VALUES (1, 'Alice', 30, 50000);
  131.  INSERT INTO Employee (E_id, E_name, Age, Salary) VALUES (2, 'Bob', 25,
  132. 45000);
  133.  INSERT INTO Employee (E_id, E_name, Age, Salary) VALUES (3, 'Charlie', 35,
  134. 60000);
  135.  COMMIT;
  136. SET SERVEROUTPUT ON;
  137. DECLARE
  138.  -- Declare variables to hold the values from the Employee table.
  139.  v_E_id Employee.E_id%TYPE;
  140.  v_E_name Employee.E_name%TYPE;
  141.  v_Age Employee.Age%TYPE;
  142. DATABASE MANAGEMENT SYSTEM BCS403
  143. Dept. OF CSE, Vemana IT 15
  144.  v_Salary Employee.Salary%TYPE;
  145.  -- Declare the cursor
  146.  CURSOR emp_cursor IS
  147.  SELECT E_id, E_name, Age, Salary
  148.  FROM Employee;
  149.  BEGIN
  150.  -- Open the cursor
  151.  OPEN emp_cursor;
  152.  -- Loop through each row fetched by the curso
  153. LOOP
  154.  FETCH emp_cursor INTO v_E_id, v_E_name, v_Age, v_Salary;
  155.  -- Exit the loop when no more rows are fetched
  156.  EXIT WHEN emp_cursor%NOTFOUND;
  157.  -- Here you can process the fetched values.
  158. DBMS_OUTPUT.PUT_LINE('E_id: ' || v_E_id || ', E_name: ' || v_E_name || ', Age: ' ||
  159. v_Age || ', Salary: ' || v_Salary);
  160.  END LOOP;
  161.  
  162.  -- Close the cursor
  163.  CLOSE emp_cursor;
  164. END;
  165. /
  166.  
  167.  
  168. 6.
  169. CREATE TABLE N_RollCall (
  170.  student_id NUMBER PRIMARY KEY,
  171.  student_name VARCHAR2(100),
  172.  birth_date DATE);
  173. CREATE TABLE O_RollCall (
  174.  student_id NUMBER PRIMARY KEY,
  175.  student_name VARCHAR2(100),
  176.  birth_date DATE);
  177. Step 2:
  178. INSERT test data INTO N_rollcall
  179. INSERT INTO N_rollcall VALUES (1, 'John Doe', '20-JAN-1990');
  180. INSERT INTO N_rollcall VALUES (2, 'Jane Smith', '21-MAR-1992');
  181. INSERT INTO N_rollcall VALUES (3, 'Bob', '20-july-2003');
  182. INSERT test data INTO O_rollcall
  183. INSERT INTO O_rollcall VALUES (4, 'James', '20-JAN-1997');
  184. INSERT INTO O_rollcall VALUES (2, 'Jane Smith', '21-MAR-1992');
  185. Step 3: Enable DBMS_OUTPUTLINE
  186. SET SERVEROUTPUT ON;
  187. Step 4: EXECUTE the PL/SQL block
  188. DECLARE
  189.  V_count NUMBER;
  190.  CURSOR c_new_rollcall IS
  191.  SELECT student_id, student_name, birth_date
  192.  FROM n_rollcall;
  193. BEGIN
  194.  FOR new_rec IN c_new_rollcall LOOP
  195.  SELECT COUNT(*)
  196.  INTO v_count
  197.  FROM o_rollcall
  198.  WHERE student_id = new_rec.student_id;
  199.  IF v_count = 0 THEN
  200.  INSERT INTO o_rollcall (student_id, student_name, birth_date)
  201.  VALUES (new_rec.student_id, new_rec.student_name, new_rec.birth_date);
  202. DBMS_OUTPUT.put_line('Record inserted: ' || new_rec.student_id);
  203.  ELSE
  204.  DBMS_OUTPUT.put_line('Record skipped: ' || new_rec.student_id);
  205.  END IF;
  206.  END LOOP;
  207.  COMMIT;
  208. END;
  209. /
  210.  
  211.  
  212. 7.
  213. 1.CREATE collection student:
  214. 1. db.createCollection(‘student’)
  215. 2.INSERT VALUES IN TO student :
  216. 2. db.sales.insertMany([
  217. {_id : 1, Name:’xyz’, Branch:’AIML’, USN:37, Age:19},
  218. {_id : 2, Name:’sam’, Branch:’CSE’, USN:49, Age:20},
  219. {_id : 3, Name:’Jack’, Branch:’Mech’, USN:48, Age:21},
  220. {_id : 4, Name:’Viola’, Branch:’AIML’, USN:60, Age:22},
  221. {_id : 5, Name:’Lucy’, Branch:’AIML’, USN:72, Age:23},
  222. ])
  223. 3. UPDATE
  224. db.student.updateOne({_id:1},{$set:{age:20}})
  225. 4. REMOVE
  226. db.student.updateOne({_id:2},{$unset:{usn:1}})
  227. 5. RENAME
  228. db.student.updateOne({_id:3},{$rename:{name:’fullname’}})
  229. 6. ADD
  230. db.student.updateOne({_id:1},{$set:{marks:600}})
  231. 7. DELETE
  232. db.student.deleteOne({_id:4})
  233. db.student.deleteMany({branch:’cse’})
  234. 8. PROJECTIONS
  235. db.student.find({},{age:1,_id:0})
  236. 9. COMPARISION OPERATOR
  237. db.student.find({age:{$gt:20}})
  238. db.student.find({$in:[12-25]})
  239. 10. LOGICAL OPERATOR
  240. a. AND
  241. db.student.find({$and:[{age:{$eq:20}},{branch:{$eq:’aiml’}}]})
  242. b. OR
  243. db.student.find({$or:[{usn:{$eq:72}},{branch:{$eq:’civil’}}]})
Advertisement
Add Comment
Please, Sign In to add comment