Can DML Statements Be Used in PL/SQL

Q

Can DML Statements Be Used in PL/SQL? - Oracle DBA FAQ - Working with Database Objects in PL/SQL

✍: FYIcenter.com

A

Yes, you can run almost any DML statements in PL/SQL directly. To manipulate Oracle database data you can include INSERT, UPDATE, and DELETE statements, directly in PL/SQL programs, without any special notation, as shown in the following sample code:

(Connect to XE with SQL*Plus)

CREATE TABLE student (id NUMBER(5) PRIMARY KEY,
  first_name VARCHAR(80) NOT NULL,
  last_name VARCHAR(80) NOT NULL);
Table created.

SELECT COUNT(*) FROM student;
  COUNT(*)
----------
         0

CREATE OR REPLACE PROCEDURE HELLO AS
BEGIN
  INSERT INTO student VALUES(29, 'Bob', 'Henry');
  INSERT INTO student VALUES(30, 'Joe', 'Bush');
  UPDATE student SET first_name = 'Fyi' WHERE id = 30;
  DELETE FROM student WHERE id = 29;
END;
/

SELECT * FROM student;
ID       FIRST_NAME  LAST_NAME
-------- ----------- ----------
30       Fyi         Bush

2007-04-28, 4505👍, 0💬