05696110 Database Programming In Practice πŸ¦†πŸ»β€β„οΈ
Academic Year 2025 | Semester 2
Home | Project | BigGrade | 4rum | BigQ
Course Description
The recent hype of artificial intelligence has led many AI companies to struggle or fail, frequently due to their poor data management. This course will serve as an introductory step towards modern practices for data management, starting from data persistence, data encoding and organization, database management tasks, data models (e.g., Ted Codd's relational model), modern query languages (e.g., SQL), anomalies from data redundancy, logical database design, data caching, query acceleration (e.g., data skipping, indexes), transaction management, concurrency control protocols (e.g., 2PL, OCC, MVCC), logging schemes (e.g., WAL), recovery mechanisms (ARIES), and database administrative tasks (e.g., database migration, version upgrading, backup, access control). Most of these topics will be associated with practical labs leveraging modern data management tools (e.g., DuckDB, Polars).
Course Information
  • Lecture: Tuesday/Wednesday 9:00 - 11:00
  • Location: Sc08 Room 102
  • Office Hours: Monday 13:00 - 16:00
Course Evaluation
  • Lecture Quiz 5%
  • Lab Assignment 10%
  • Solo Project (SP) 20%
  • Team Project 25%
  • SQL Exam 10%
  • Final Exam 30%
Course Staff

Yuttapichai Kerdcharoen (Guide)
Instructor
Phuvis Kerdpramote (Poom)
Head Teaching Assistant
Saksakun Jiarapong (Indy)
Head Teaching Assistant
Malapchai Chaisihat (Nueng)
Teaching Assistant
Kyawt Hmue Kay Khaing (Ash)
Teaching Assistant
Yanapat Sorasak (Audy)
Teaching Assistant
Schedule
G - Guide | P - Poom | I - Indy | N - Nueng
Week Date Topic
Nov 24 Lecture #1 - Introduction to Database G
Video Only
Slides Video
1 Nov 25 Lab #1 - Google Sheets 101 πŸ’» P Slides
Nov 26 Lecture #2 - Data Persistence G
Online SP-1 Out
Slides Video
2 Dec 2 Lab #2 - Python File I/O πŸ’» I Slides
Dec 3 Lecture #3 - Data Organization G
Online
Slides Video
3 Dec 9 Lab #3 - Polars 101 πŸ»β€β„οΈ πŸ’» P
Dec 10
Constitution Day
Lecture #4 - Database Management G
Video Only
4 Dec 16 Lab #4 - SQL (Part 1) - DDL, DML, Constraints, Database Connectivity πŸ¦†πŸ’» N
SP-1 Due
Dec 17 Lab #5 - SQL (Part 2) - Single-Table Queries πŸ¦†πŸ’» N
SP-2 Out
5 Dec 23 Lab #6 - SQL (Part 3) - Subqueries and Joins πŸ¦†πŸ’» I
Dec 24 Lecture #5 - Data Models G
6 Dec 30 - 31 New Year Week (No Class)
7 Jan 6 Lab #7 - SQL (Part 4) - Window Functions, Common Table Expressions πŸ¦†πŸ’» I
Jan 7 Lecture #6 - Modern Query Languages G
8 Jan 13 SQL Exam
Jan 14 Lecture #7 - Data Redundancy G
9 Jan 20 - 21 Midterm Week (No Class)
10 Jan 27 Lecture #8 - Entity-Relationship Model G
SP-2 Due
Jan 28 Lab #8 - Logical Database Design (Practice) G
SP-3 Out
11 Feb 3 Lab #9 - Logical Database Design (Case Study) P
Feb 4 Lecture #9 - Data Caching G
12 Feb 10 Project Proposal Presentation
Feb 11 Lecture #10 - Query Acceleration G
SP-4 Out
13 Feb 17 Lab #10 - Performance Tuning πŸ¦† I
SP-3 Due
Feb 18 Lecture #11 - Concurrency Control and Protocols G
14 Feb 24 Project Halfway Check-In
Feb 25 Lecture #12 - Logging and Recovery Mechanisms G
15 Mar 3
Makha Bucha
Lecture #13 - Data Protection G
Video Only
Mar 4 Guest Lecture (TBA)
SP-4 Due
16 Mar 10 Lab #11 - Transactions πŸ¦† G
Mar 11 Project Presentation
Mar 26 Final Exam