Home » SQL & PL/SQL » SQL & PL/SQL » Flag this message Is 'select' a part of Oracle DML language
Flag this message Is 'select' a part of Oracle DML language [message #339983] Sun, 10 August 2008 14:29 Go to next message
anishvkurian
Messages: 1
Registered: August 2008
Junior Member
In the book "OCP Introduction to Oracle 9i : SQL Exam guide (Tata McGraw-Hill Edition 2002)", page number 20 says: "Many developers consider consider this statement(select) to be part of DML operations against the database .However, Oacle DOES NOT. When OCP refers to DML statements, you should make a mental note that Oracle is not refering to the select statement."

and the answer of review question 4 in page number 24 says: " Oracle considers the select command to be part of data manipulation language eventhough it technically doesnt allow you to change the data being stored."

Could you please tell me whether select statement is a part of Oracle DML language or not..

Please bear with me as i am very new to Oracle & SQL.
Re: Flag this message Is 'select' a part of Oracle DML language [message #339991 is a reply to message #339983] Sun, 10 August 2008 16:04 Go to previous messageGo to next message
gintsp
Messages: 118
Registered: February 2007
Senior Member
Hmm somehow I don;t feel confidence in this book according to these citations. However to be frank I don't feel much confidence to OCP questions and answers at all. Anyway most probably at least for OCP answers you should look in Oracle docs, for version 10g these are here and they say:
<citation start>
Data Manipulation Language (DML) Statements
Data manipulation language (DML) statements access and manipulate data in existing schema objects. These statements do not implicitly commit the current transaction. The data manipulation language statements are:


CALL
DELETE
EXPLAIN PLAN
INSERT
LOCK TABLE
MERGE
SELECT
UPDATE

The SELECT statement is a limited form of DML statement in that it can only access data in the database. It cannot manipulate data in the database, although it can operate on the accessed data before returning the results of the query.

The CALL and EXPLAIN PLAN statements are supported in PL/SQL only when executed dynamically. All other DML statements are fully supported in PL/SQL.
<citation end>
Manipulation doesn't mean always change, You can take something and manipulate with it, without any changes to it or things around, so the same is true also for select Smile

Gints Plivna

[Updated on: Sun, 10 August 2008 23:49] by Moderator

Report message to a moderator

Re: Flag this message Is 'select' a part of Oracle DML language [message #339992 is a reply to message #339991] Sun, 10 August 2008 16:28 Go to previous messageGo to next message
Barbara Boehmer
Messages: 9100
Registered: November 2002
Location: California, USA
Senior Member
Even the Oracle documentation is inconsistent. The following are from the 11g glossary.

DML

Data manipulation language. Includes statements like INSERT, UPDATE, and DELETE, which change data in tables.

data manipulation language

The category of SQL statements that query and update database data. Common DML statements are SELECT, INSERT, UPDATE, and DELETE.

Re: Flag this message Is 'select' a part of Oracle DML language [message #340014 is a reply to message #339991] Mon, 11 August 2008 00:34 Go to previous messageGo to next message
Frank
Messages: 7901
Registered: March 2000
Senior Member
gintsp quoted the Docs on Sun, 10 August 2008 23:04
The data manipulation language statements are:

CALL
DELETE
EXPLAIN PLAN
INSERT
LOCK TABLE
MERGE
SELECT
UPDATE


Weird. I would never consider CALL or EXPLAIN PLAN to be DML. LOCK TABLE, that's a boundary..
Re: Flag this message Is 'select' a part of Oracle DML language [message #340023 is a reply to message #339983] Mon, 11 August 2008 01:44 Go to previous message
Michel Cadot
Messages: 68718
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
I had the same discussion with Tom Kyte 6 months ago:
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:670629100346040211#675160200346751619

Regards
Michel
Previous Topic: Oracle PL/SQL String Function Overhead
Next Topic: creating a unified table from many tables
Goto Forum:
  


Current Time: Mon Dec 02 08:15:52 CST 2024