Chap Insert Manipulate

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 26

Data Manipulation

Chapter Introduction to Oracle9i: SQL 1


insert/manipulate data
Chapter Objectives
• Add a record to an existing table
• Add a record containing a NULL value to
an existing table
• Use a subquery to copy records from an
existing table
• Modify the existing rows within a table

Chapter Introduction to Oracle9i: SQL 2


insert/manipulate data
Chapter Objectives
• Use substitution variables with an UPDATE
command
• Issue the transaction control statements
COMMIT and ROLLBACK
• Differentiate between DDL, DML, and
transaction control commands

Chapter Introduction to Oracle9i: SQL 3


insert/manipulate data
Chapter Objectives
• Delete records
• Differentiate between a shared lock and an
exclusive lock
• Use the SELECT…FOR UPDATE
command to create a shared lock

Chapter Introduction to Oracle9i: SQL 4


insert/manipulate data
INSERT Command
• Used to add rows to existing tables
• Identify table in the INSERT INTO clause
• Specify data in the VALUES clause
• Can only add one row at a time to a table

Chapter Introduction to Oracle9i: SQL 5


insert/manipulate data
INSERT Command Syntax
• Enclose non-numeric data in single quotes
• If column list not provided, a value must be
assigned to each column in the table

Chapter Introduction to Oracle9i: SQL 6


insert/manipulate data
INSERT Command Example

Chapter Introduction to Oracle9i: SQL 7


insert/manipulate data
Inserting NULL Value
• Omit column name from INSERT INTO
clause column list
• Substitute two single quotation marks
• Use NULL keyword

Chapter Introduction to Oracle9i: SQL 8


insert/manipulate data
Inserting Data from an Existing
Table
Substitute subquery for VALUES clause

Chapter Introduction to Oracle9i: SQL 9


insert/manipulate data
Modifying Existing Rows
• Modify rows using UPDATE command
• Use UPDATE command to:
– Add values to an existing row
– Change existing values

Chapter Introduction to Oracle9i: SQL 10


insert/manipulate data
UPDATE Command
• UPDATE clause identifies table
• SET clause identifies column being
changed and new value
• Optional WHERE clause specifies row(s) to
be changed – if omitted, will update all
rows

Chapter Introduction to Oracle9i: SQL 11


insert/manipulate data
UPDATE Command Syntax

Chapter Introduction to Oracle9i: SQL 12


insert/manipulate data
UPDATE Command Example

Chapter Introduction to Oracle9i: SQL 13


insert/manipulate data
• Note: select query format is determined at
the time of the select statement: e.g.

Select title, to_char(pubdate, ‘MONTH DD,


YYYY’) “Publication Date”,
to_char (retail, ‘$999.99’) “Retail Price”
from books

Chapter Introduction to Oracle9i: SQL 14


insert/manipulate data
Substitution Variables
• Prompts user for value
• Identified by ampersand (&) preceding
variable name
• Can be used to create interactive scripts

Chapter Introduction to Oracle9i: SQL 15


insert/manipulate data
Substitution Variable Example

Chapter Introduction to Oracle9i: SQL 16


insert/manipulate data
Transaction Control
• Results of Data Manipulation Language
(DML) are not permanently updated to table
until explicit or implicit COMMIT occurs
• Transaction control statements can:
– Commit data through COMMIT command
– Undo data changes through ROLLBACK
command

Chapter Introduction to Oracle9i: SQL 17


insert/manipulate data
COMMIT
• Explicit COMMIT occurs by executing
COMMIT;
• Implicit COMMIT occurs when DDL
command is executed or user properly exits
system
• Permanently updates table(s) and allows
other users to view changes

Chapter Introduction to Oracle9i: SQL 18


insert/manipulate data
ROLLBACK
• Used to “undo” changes that have not been
committed
• Occurs when:
– ROLLBACK; is executed
– System restarts after crash

Chapter Introduction to Oracle9i: SQL 19


insert/manipulate data
Deleting Rows//
DELETE command removes a row from a table

Chapter Introduction to Oracle9i: SQL 20


insert/manipulate data
DELETE Command – Omitting
WHERE Clause
Omitting WHERE clause removes all rows

Chapter Introduction to Oracle9i: SQL 21


insert/manipulate data
Table Locks
• Prevents users from changing same data or
objects
• Two types:
– Shared – prevents DML operations on portion
of table
– Exclusive – locks table preventing other
exclusive or shared locks

Chapter Introduction to Oracle9i: SQL 22


insert/manipulate data
Shared Lock
• Locks portion of table affected by DML
operation
• Implicitly occurs during UPDATE or
DELETE operations
• Explicitly occurs through LOCK TABLE
command with SHARE MODE option
• Released when COMMIT (implicit or
explicit) or ROLLBACK occurs
Chapter Introduction to Oracle9i: SQL 23
insert/manipulate data
Exclusive Lock
• Implicitly locks table for DDL operations -
CREATE or ALTER TABLE
• Explicitly locked through LOCK TABLE
command with EXCLUSIVE MODE option
• Released after execution of DDL operation
or after user exits system

Chapter Introduction to Oracle9i: SQL 24


insert/manipulate data
SELECT…FOR UPDATE
Command
• Creates shared lock on retrieved portion of
table
• Prevents one user from changing a row
while another user is selecting rows to be
changed
• Released through implicit or explicit
commit

Chapter Introduction to Oracle9i: SQL 25


insert/manipulate data
SELECT…FOR UPDATE
Command – Example

Chapter Introduction to Oracle9i: SQL 26


insert/manipulate data

You might also like