SQL views: for what purposes can views be used (rows/columns security and complexity hiding)?
-
ATo hide columns only
-
BTo hide rows only
-
CTo hide complicated SQL statements only
-
DAll of the above are uses for SQL views
Answer
Correct Answer: All of the above are uses for SQL views
Explanation
Introduction / Context:Views are powerful for security and abstraction. They can filter rows, project specific columns, and encapsulate complex joins and calculations behind a simple name.
Given Data / Assumptions:
- A view can contain a WHERE clause (row filtering).
- A view can select a subset of columns (column filtering).
- A view can wrap complex SELECTs so consumers use simple SELECT * FROM view.
Concept / Approach:Because a view is defined by an arbitrary SELECT, it can include or exclude columns, include conditions to restrict rows, and combine multiple tables. Thus, all three use cases apply.
Step-by-Step Solution:
Assess each offered use: column projection, row filtering, complexity hiding.Recognize all are achievable via the view’s SELECT definition.Therefore choose the combined option.Verification / Alternative check:Create sample views: one selecting limited columns, one with WHERE department_id = 10, and one wrapping a complex join. All are valid and useful.
Why Other Options Are Wrong:Each individual option is too narrow; views support more than a single purpose.
Common Pitfalls:Relying on views alone for security: combine with proper privileges and, when needed, row-level security policies for robust protection.
Final Answer:All of the above are uses for SQL views