• Schema Design: A database describes data. The data is organized into connected tables. Schema Design is about how to design these structures.

  • Relational Algebra: You cannot understand databases without understanding relational algebra. It explains what SQL does. It forms the internal representation of a query. This internal representation is the starting point for query optimization, and query execution.

  • Transaction Management: If multiple users are viewing and updating the same data at the same time, how should these actions be coordinated? Without some control, the database will quickly become broken. E.g. the same airplane seat could be sold twice.