Introduction: Database (Elective A)
Introductionβ
This module provides students with comprehensive knowledge and skills in database design, implementation, and management. Students will learn about database concepts, data modeling, SQL programming, and database administration. This elective module builds upon the fundamental database knowledge from the compulsory units and prepares students for advanced database applications in real-world scenarios.
Learning Objectivesβ
Students will learn about:
- Database design and data modeling techniques
- SQL programming and query optimization
- Database management and administration
- Data integrity and security considerations
- Database applications in business contexts
- Advanced database concepts and emerging technologies
Module Structureβ
This elective unit covers advanced database topics:
ποΈ Database Designβ
- Entity-Relationship (ER) modeling
- Normalization and database optimization
- Database schema design
- Data modeling best practices
- Database performance considerations
π» SQL Programmingβ
- Advanced SQL queries and functions
- Stored procedures and triggers
- Database programming with SQL
- Query optimization techniques
- Complex data manipulation
π§ Database Managementβ
- Database administration tasks
- User management and security
- Backup and recovery procedures
- Database monitoring and maintenance
- Performance tuning and optimization
π Database Applicationsβ
- Web database integration
- Database connectivity and APIs
- Multi-user database systems
- Database security and access control
- Cloud database services
Key Conceptsβ
Database Architectureβ
- Relational Model: Tables, relationships, and constraints
- ACID Properties: Atomicity, Consistency, Isolation, Durability
- Indexing: Performance optimization techniques
- Transactions: Data consistency and integrity
SQL Programmingβ
- DDL: Data Definition Language for schema creation
- DML: Data Manipulation Language for data operations
- DCL: Data Control Language for security management
- TCL: Transaction Control Language for transaction management
Database Securityβ
- Authentication: User identification and verification
- Authorization: Access control and permissions
- Encryption: Data protection and privacy
- Auditing: Security monitoring and compliance
Practical Skillsβ
By the end of this module, students will be able to:
- Design databases using proper modeling techniques
- Write complex SQL queries for data retrieval and manipulation
- Implement database security measures and access controls
- Optimize database performance through indexing and query tuning
- Manage database systems in production environments
Assessment Focusβ
This module emphasizes:
- Understanding of database design principles
- Application of SQL programming skills
- Analysis of database performance and optimization
- Creation of database solutions for real-world problems
- Evaluation of database security and integrity measures
Database Technologies Coveredβ
- MySQL: Open-source relational database
- PostgreSQL: Advanced open-source database
- SQLite: Lightweight embedded database
- NoSQL: Document and key-value databases
- Cloud Databases: AWS RDS, Google Cloud SQL
Getting Startedβ
To begin your journey through this module:
- Review the learning objectives to understand what you'll achieve
- Study database design principles and modeling techniques
- Practice SQL programming with hands-on exercises
- Learn database administration and management tasks
- Apply knowledge to real-world database projects
This elective module provides advanced database skills essential for careers in data management, software development, and information systems. The knowledge gained here will be valuable for university studies and professional work.
Source/Reference: ICT Curriculum and Assessment Guide - Education Bureau, Hong Kong