Data Definition Language (DDL) ๐
Mentor's Note: DDL is about the Structure, not the data. Think of it as building the house itself before you move the furniture in! ๐ก
๐ The Scenario: The Architect's Blueprint ๐๏ธโ
Imagine you are building a new luxury apartment complex.
- CREATE: You design the Blueprint (Number of rooms, floor plan). You are building the structure. ๐๏ธ
- ALTER: You decide to add a Balcony to every room later. You are changing the existing structure. ๐ ๏ธ
- DROP: The building is old and dangerous. you Demolish it entirely. ๐ฅ
- The Result: You are managing the "Container," not the people living inside. โ
๐ Key DDL Commandsโ
1. CREATEโ
Used to create a new table or database object.
CREATE TABLE students (
id NUMBER PRIMARY KEY,
name VARCHAR2(100),
age NUMBER
);
2. ALTERโ
Used to modify an existing object (add/remove columns).
ALTER TABLE students ADD (email VARCHAR2(50));
3. DROPโ
Deletes the table and ALL its data permanently.
DROP TABLE old_records;
๐จ Visual Logic: The Schema Lifecycleโ
๐ป Implementation: The Schema Labโ
- Creating a Table
- Modifying a Table
-- ๐ Scenario: Setting up a library system
-- ๐ Action: Defining the book structure
CREATE TABLE books (
book_id NUMBER(5) PRIMARY KEY,
title VARCHAR2(200) NOT NULL,
author VARCHAR2(100),
price NUMBER(8,2)
);
-- ๐๏ธ Outcome: A new empty "container" for books.
-- ๐ Action: Add a column for Published Year
ALTER TABLE books
ADD (published_year NUMBER(4));
๐ Sample Dry Runโ
| Command | Action | Data Inside? | Structure Changes? |
|---|---|---|---|
CREATE | Build box ๐ฆ | No | New box added. |
ALTER | Add divider ๐ | Unaffected | Box modified. |
DROP | Burn box ๐ฅ | DESTROYED | Box removed. |
๐ Complexity Analysisโ
- Execution: DDL commands are Auto-Committed in Oracle. This means once you run them, you cannot "Undo" (Rollback) the change! โ ๏ธ Be very careful.
๐ฏ Practice Lab ๐งชโ
Task: Create a table EMPLOYEES with emp_id, emp_name, and join_date. Then, add a salary column using ALTER.
Hint: Use VARCHAR2 for names and DATE for dates. ๐ก
๐ก Interview Tip ๐โ
"Interviewers often ask: 'What is the difference between DROP and TRUNCATE?' Answer: DROP deletes the structure + data. TRUNCATE deletes ONLY the data but keeps the empty structure!"
๐ก Pro Tip: "Good design is a lot like clear thinking made visual." - Edward Tufte