Skip to main content

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:

  1. Review the learning objectives to understand what you'll achieve
  2. Study database design principles and modeling techniques
  3. Practice SQL programming with hands-on exercises
  4. Learn database administration and management tasks
  5. 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