Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PL/SQL
3-3
Manipulating Data in PL/SQL
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 3
Manipulating Data in PL/SQL
Purpose
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 4
Manipulating Data in PL/SQL
Manipulating Data Using PL/SQL
• UPDATE
• DELETE
• MERGE
INSERT
MERGE
UPDATE
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 5
Manipulating Data in PL/SQL
Manipulating Data Using PL/SQL
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 6
Manipulating Data in PL/SQL
Manipulating Data Using PL/SQL
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 7
Manipulating Data in PL/SQL
Manipulating Data Using PL/SQL
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 8
Manipulating Data in PL/SQL
Inserting Data
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 9
Manipulating Data in PL/SQL
Updating Data
DECLARE
v_sal_increase employees.salary%TYPE := 800;
BEGIN
UPDATE copy_emp
SET salary = salary + v_sal_increase
WHERE job_id = 'ST_CLERK';
END;
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 10
Manipulating Data in PL/SQL
Deleting Data
DECLARE
v_deptno employees.department_id%TYPE := 10;
BEGIN
DELETE FROM copy_emp
WHERE department_id = v_deptno;
END;
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 11
Manipulating Data in PL/SQL
Merging Rows
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 12
Manipulating Data in PL/SQL
Getting Information From a Cursor
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 13
Manipulating Data in PL/SQL
What is a Cursor?
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 14
Manipulating Data in PL/SQL
Implicit and Explicit Cursors
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 15
Manipulating Data in PL/SQL
Cursor Attributes for Implicit Cursors
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 16
Manipulating Data in PL/SQL
Cursor Attributes for Implicit Cursors
Attribute Description
Boolean attribute that evaluates to TRUE if the most
SQL%FOUND
recent SQL statement returned at least one row.
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 17
Manipulating Data in PL/SQL
Using Implicit Cursor Attributes: Example 1
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 18
Manipulating Data in PL/SQL
Using Implicit Cursor Attributes: Example 2
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 19
Manipulating Data in PL/SQL
Using Implicit Cursor Attributes: Good
Practice Guideline
• Look at this code which creates a table and then executes a
PL/SQL block. Determine what value is inserted into RESULTS.
BEGIN
UPDATE copy_emp
SET salary = salary + 100
WHERE job_id = 'ST_CLERK';
INSERT INTO results (num_rows)
VALUES (SQL%ROWCOUNT);
END;
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 20
Manipulating Data in PL/SQL
Terminology
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 21
Manipulating Data in PL/SQL
Summary
PLSQL 3-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 22
Manipulating Data in PL/SQL