Database design.
Erhvervskompentencer og Læringsmål
Oversigt over ugen:
| Dag | Emne |
|---|---|
| Tirsdag | Modellering og normalisering |
| Onsdag | Online møde |
| Torsdag | JDBC og SQL |
| Fredag | Online møde |
Resultatet
Efter denne uge har i været igennem følgende:
- I har lært hvordan man designer en database med tabeller og relationer, samt datatyper på kolonnerne og “constraints” der hjælper med at sikre data integriteten.
- I har lært hvordan man laver CRUD (Create, Read, Update og Delete) operationer på databasen for at manipulere data.
- I vil kende til forskellen på DDL: Data Definition Language og DML: Data Manipulation Language.
- I vil vide hvordan man man laver et E/R diagram og hvordan omsætter dette til en fysisk data model og til et sql script
- I vil have lært en række SQL commandoer til at kunne lave komplekse udtræk af data fra en database med flere sammenkædede tabeller.
Tirsdag: Modellering og normalisering
Læs denne artikel: - Dansk artikel om normalisering
Onsdag: Video-dag
Se disse to videoer om mange til mange relationer:
Torsdag
JDBC og SQL.
- Genopfrisking af indhold fra 1. semester
Opgaver
Oversigt over resourcer (til opslag og inspiration):
| Emne | Ressourcer |
|---|---|
| 1: Relationelle databaser og SQL | Lynda.com video kursus om MySql: Se kapitel 2-6 + 8, Workbench: Reference materiale til opslag. |
| 2: DML | Data Manipulation Language: CRUD operationer - MySQL Tutorial: Grundig online MySql bog som i kan læse i når der er tid. |
| 3: Complex SELECT statements: | Inner, Left/Right join - Aggregate functions: AVG, COUNT, MIN , MAX, SUM - Sub queries - Operators: AND, OR, NOT, =, <>, >=, BETWEEN, IN, LIKE with WILDCARDS and ALIAS - ANY vs. ALL - UNION |
| 4: Modelering | Domain model udledt fra kravsspecifikationen (Conceptual model)->(Logical model)-> (Physical Database model). Data modeling in workbench, Reverse engineering in workbench. |
| 5: DDL | DDL: Data Definition Language - CREATE, DROP, ALTER: Database, Table, View, SQL-constraints: Primary key, Foreign key and MySQL Cascade, NOT NULL, Unique, MYSQL Data types, auto_increment |
| 6: Indexing | Indexing |
| 7: NF | 3 Normalformer: 1NF, 2NF, 3NF |
| 8: JDBC | JDBC: Connection, Statement, PreparedStatement og SQL Injection, ResultSet, Transactions i Mysql og Transactions i java med JDBC. |
| 9: SQL Exceptions | SQL Exceptions og hvordan man opsætter og læser error logs (Configurationsfilen ligger på: /etc/mysql/mysql.conf.d/mysqld.cnf og logfilen på sudo tail /var/log/mysql/mysql.log) |
| 10: Backup | Backup og Restore database. |