In database systems, what does a Data Manipulation Language (DML) primarily specify to the DBMS?
-
AHow the physical files and indexes must be arranged on disk
-
BWhat data to retrieve, insert, update, or delete, without prescribing the low-level access path
-
CHow the conceptual schema is defined and altered over time
-
DOnly security privileges for users and roles
-
ENone of the above
Answer
Correct Answer: What data to retrieve, insert, update, or delete, without prescribing the low-level access path
Explanation
Introduction / Context:SQL is divided conceptually into a data definition language (DDL) for structure and a data manipulation language (DML) for operating on data. Understanding the DML's abstraction boundary is vital for writing portable and efficient queries.
Given Data / Assumptions:
- We refer to relational DBMS concepts.
- DML examples include SELECT, INSERT, UPDATE, DELETE.
- Optimizers choose access paths automatically.
Concept / Approach:DML is declarative: it specifies what result is desired, not how to obtain it. The optimizer picks indexes, join orders, and execution strategies based on statistics and constraints.
Step-by-Step Solution:
Identify operations that act on tuples and relations.Exclude physical design and schema definition (DDL).Select the option describing declarative data operations.Verification / Alternative check:DBMS documentation separates DML from DDL and DCL (security) and TCL (transactions).
Why Other Options Are Wrong:Physical layout and schema are DDL concerns; security is DCL; DML is not limited to privileges.
Common Pitfalls:Embedding algorithmic steps in SQL; let the optimizer handle access paths and focus on correct predicates and projections.
Final Answer:What data to retrieve, insert, update, or delete, without prescribing the low-level access path