2.1 Creating the database structure2.1.1 Creating databases2.1.2 Creating schemas2.1.3 Creating tables2.2 Querying and manipulating data2.3 Data integrity2.3.1 Constraints2.3.2 Foreign keys2.4 Transactions2.4.1 Implicit transactions2.4.2 Explicit transactions2.4.3 Multiversion concurrence control2.5 Joins2.6 Functions and triggers2.6.1 Functions: A practical example2.6.2 Triggers: A practical example2.7 Views2.8 Roles and access control