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.
2. ALTER¶
Used to modify an existing object (add/remove columns).
3. DROP¶
Deletes the table and ALL its data permanently.
๐จ Visual Logic: The Schema Lifecycle¶
graph LR
A[Design ๐] -- CREATE --> B[New Table ๐]
B -- ALTER --> C[Updated Structure ๐ ๏ธ]
C -- DROP --> D[Deleted / Empty Space ๐จ]
๐ป Implementation: The Schema Lab¶
๐ 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: The Employee Setup
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