Utöka snowflake-schemat
Företaget funderar på att expandera sin verksamhet bortom bokhandlar i Kanada och USA. De vill särskilt etablera sig på en ny kontinent. Som förberedelse bestämmer du dig för att ett continent-fält behövs när butikernas adresser lagras.
Tur nog har du ett snowflake-schema i det här scenariot. Som vi gick igenom i videon är snowflake-schemat vanligtvis enklare att utöka och säkerställer samtidigt datakonsistens. Förutom dim_country_sf har en tabell vid namn dim_continent_sf laddats in. Den innehåller den enda kontinent som för närvarande behövs, North America, samt en primärnyckel. I den här övningen ska du utöka dim_country_sf så att den refererar till dim_continent_sf.
Den här övningen är en del av kursen
Databasdesign
Övningsinstruktioner
- Lägg till en kolumn
continent_ididim_country_sfmed standardvärdet 1. Observera attNOT NULL DEFAULT(1)förhindrar att värdet är null och sätter standardvärdet till1. - Gör den nya kolumnen till en främmande nyckelreferens till
continent_ididim_continent_sf.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
-- Add a continent_id column with default value of 1
ALTER TABLE ___
ADD ___ int NOT NULL DEFAULT(1);
-- Add the foreign key constraint
ALTER TABLE ___ ADD CONSTRAINT country_continent
FOREIGN KEY (___) REFERENCES ___(___);
-- Output updated table
SELECT * FROM dim_country_sf;