Kom igångKom igång gratis

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

Visa kurs

Övningsinstruktioner

  • Lägg till en kolumn continent_id i dim_country_sf med standardvärdet 1. Observera att NOT NULL DEFAULT(1) förhindrar att värdet är null och sätter standardvärdet till 1.
  • Gör den nya kolumnen till en främmande nyckelreferens till continent_id i dim_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;
Redigera och kör kod