Welcome to the interactive learning tool for Grade 13 ICT. Use the sections below to explore and practice database and algorithm concepts.
📝 SQL Command Playground (DDL & DML)
Practice Data Definition Language (DDL) commands for creating tables and constraints, and Data Manipulation Language (DML) for managing data.
Result:
🗺️ ER Diagram to Logical Schema Converter
Identify the requirements of a given scenario, select entities, attributes, and relationships, and see the transformation into the Relational Schema (SQL).
Step 1: Define Entities & Relationships (Simulated Selection)
Step 2: Conceptual ER Diagram (M:N Example)
Select entities and relationships above to simulate analysis.
- student_id (PK)
- name
- course_id (PK)
- title
Generated Logical Schema (SQL DDL):
The generated SQL schema will appear here.
🧩 Comparison of Database Models
Test your knowledge of database models by dragging each model name to its correct key feature.
Drag and Drop Matching Activity
| Model | Key Feature | Example Use Case |
|---|---|---|
| Flat File System | Data stored in a single, unorganized file; no structural relationships. | Simple contact lists, CSV files. |
| Hierarchical Model | Tree-like structure; one-to-many parent-child relationships. | File systems, older database systems. |
| Network Model | Flexible many-to-many relationships using pointers (set). | Complex data models. |
| Relational Model | Data organized in tables (relations) with rows and columns, uses keys. | Most modern business applications (e.g., MySQL, PostgreSQL). |
| Object Relational Model | Extends the relational model with object-oriented features. | Databases handling complex data types. |
🔍 Normalization Helper (1NF, 2NF, 3NF)
Understand how normalization reduces abnormalities and removes functional dependencies.
Click the buttons above to see how normalization reduces abnormalities.
Graphical View of Relational Schema & Decomposition
📊 Algorithm Visualizer: Searching & Sorting
Visualize fundamental algorithms like **Bubble Sort** and **Sequential Search**.
Enter data and select an algorithm.
Bubble Sort Python Code & Flowchart Concept:
def bubble_sort(arr):
n = len(arr)
# Loops to control comparison and swapping
for i in range(n):
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j] # Swap
return arr
