====== Navngivningskonventioner ====== **Vigtigste regel:** //Konsistens er vigtigere end den enkelte konvention.// Det betyder, at hele databasen skal følge samme mønster – uanset hvilken stil man vælger. Disse retningslinjer er en **anbefalet standard** i undervisningen. ---- ==== Overordnede principper ==== * Brug kun bogstaver (a–z), tal og underscore (_) * Undgå mellemrum og specialtegn (herunder dansk æ,ø og å) * Undgå SQL-reserverede ord (fx ''order'', ''group'', ''select'') SQLite skelner ikke mellem store og små bogstaver, men vi gør det for læsbarhed. ---- ==== Tabeller ==== * Brug **Stort begyndelsesbogstav (PascalCase)** * Navngives i **ental** * Tabellen repræsenterer én type objekt (fx en bruger) **Eksempler** User Order Product CustomerAddress ---- ===== Felter (columns) ===== * Brug **lowercase** (snake_case) * Navne skal være beskrivende Eksempler id username email created_at order_date ==== Primærnøgler ==== Primærnøglen hedder altid: id Eksempel id INTEGER PRIMARY KEY ---- ==== Fremmednøgler ==== Navngives som: **_id** Eksempler user_id order_id product_id ---- ==== Eksempel på tabel ==== CREATE TABLE Customer ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, email TEXT NOT NULL, created_at DATETIME ); CREATE TABLE CustomerOrder ( id INTEGER PRIMARY KEY, customer_id INTEGER NOT NULL, order_date DATETIME, FOREIGN KEY (customer_id) REFERENCES Customer(id) ); ==== Husk ==== En database med ensartede navne er: * nemmere at læse * nemmere at fejlfinde * nemmere at samarbejde om