evilaidMedlem sedan apr. 2009433 inlägg Hej
Jag har använt mig en hel del av databser när jag gjort hemsidor. Min kunskap då sträcker sig till att göra tabeller och skapa relationer mellan dessa. Sen skrivs och hämtas lite information som presenteras via ett webb.
Jag ska börja på en ny nu som kommer bestå av ganska många tabeller och kopplingar. Då min kunskap inte sträcker sig längre än beskrivit ovan så skulle ju uppskatta tips på vad man ska ta hänsyn till när gör lite större databasprojekt...
Som sagt, jag villg öra det här bra från start och försöka planera det ordenligt, nu sitter jag i excel och ritar upp alla tabeller och kulumner samt kopplingar för att få lite överblick..
en sak t.ex: har jag gjort en databas någon gång och jag ser en kolumn där samma värde återkommer väldigt ofta så har jag direkt skapat en relation till en anna tabell som innehåller värdet, och bara tilldelat kolumnen ett id nummer till nästa tabell..
Frågan är om jag tjänar något på att göra så?
det som återkommer i kolumnen är kanske ett ord på 3 bokstäver, tjänar jag mycket på att skapa en relation i ett sånt fall??
rent generellt vad finns det man sak tänka i större databas projekt?
Tacksam för alla tips, ideer och erfarenheter..
Mvh
LaspMedlem sedan juli 200012 980 inlägg En databas har man för väldigt många poster, relationer är för att slippa dubbellagring av uppgifter.
Om du bara pratar om något hundratal poster, så skall de vara så kompletta som möjligt för att snabbt kunna leverera data.
Du kanske kan beskriva lite mer vad syftet är säger Lasp
evilaidMedlem sedan apr. 2009433 inlägg ska bli en typ av orderhantering.. Tänker mest att det är ju samma artiklar som återkommer hela tiden och det kommer ju bli många tusentals. Så det kommmer ganska snabbt samlas många poster i databasen och jag känner att om samma produkt återkommer i varje post så kanske man ska skapa en relation..
Frågan är ju lite var gränsen går när man ska skriva ut det direkt eller skapa en tabell med de olika namnen?
Storleksmässigt vad skiljer mellan typen int och varchar(20) ?
Nästa fråga blir ju hur mycket tyngre blir det när man hämtar från olika tabeller?
Hämtas en order så ska det hämtas från olika tabeller med artikelinformation, produktion m.m.
Det somkommer vara är ju att en användare hämtar upp en order för utskrift, ja menar det kan väll inte skapar så stor belastning om man har en del relationer?
Ursäkta min röriga beskrivning men har väldigt svårt att veta hur man ska se på och hur det ska användas?
cascaMedlem sedan feb. 20005 891 inlägg Här har du en "snabbkurs" i lite grundläggande databaskoncept:
http://www.databasteknik.se/webbkursen/
evilaidMedlem sedan apr. 2009433 inlägg Vilken kanon kurs, lusläste lite men ska gå igenom allt sen..
kom att tänka på ett exempel vad det gäller relationer:
Säg att jag har en produkt som finns i två olika utföranden. varje produkt kan dock fås i olika dimensioner osv.
så första exemplet är att jag har en tabell som med ca 30 olika kolumner. 10 av dessa kolumner används oavsett produkten, alltså typ, ordernummer, produktionsvecka, färg m.m.. av resterande 20 kolumner så används ca 10 av dessa för att beskriva produkt 1 och dess egenskaper som ska gälla för den beställning. det innebär att resterande 10 fälten inte används, hade det varit produkt 2 som beställts så hade dens egenskaper beskrivit av data i dom sista 10 klumnerna...
Som jag vill göra då istället som exxempel 2 är att:
att skapa en tabell med dom 10 första fälten som gäller för ordern oavsett vilken produkt det gäller, typ produktionsvecka, ordernummer m.m.
Sen skapa en tabell med parametrar (kolumner) för produkt 1 och en tabell med parametrar (kolumner) för produkt 2?
LaspMedlem sedan juli 200012 980 inlägg Du tänker rätt, en tabell med 30 kolumner är spontant fel.
När du skriver ner de grundläggande parametrarna så ser du snabbt vad skall läggas in i en egen tabell med relation.
Det finns en mängd exempel typ Northwind där du kan skala bort mycket lullull men ha kvar en kärna.
Tänk dig gärna in i ett beställningsscenario då märker du vad du måste ha med.
cascaMedlem sedan feb. 20005 891 inlägg
evilaid skrev:
Vilken kanon kurs, lusläste lite men ska gå igenom allt sen..
kom att tänka på ett exempel vad det gäller relationer:
Säg att jag har en produkt som finns i två olika utföranden. varje produkt kan dock fås i olika dimensioner osv.
så första exemplet är att jag har en tabell som med ca 30 olika kolumner. 10 av dessa kolumner används oavsett produkten, alltså typ, ordernummer, produktionsvecka, färg m.m.. av resterande 20 kolumner så används ca 10 av dessa för att beskriva produkt 1 och dess egenskaper som ska gälla för den beställning. det innebär att resterande 10 fälten inte används, hade det varit produkt 2 som beställts så hade dens egenskaper beskrivit av data i dom sista 10 klumnerna...
Som jag vill göra då istället som exxempel 2 är att:
att skapa en tabell med dom 10 första fälten som gäller för ordern oavsett vilken produkt det gäller, typ produktionsvecka, ordernummer m.m.
Sen skapa en tabell med parametrar (kolumner) för produkt 1 och en tabell med parametrar (kolumner) för produkt 2?
Om man har en tabell där det blir mycket NULL-värden så är det en dead give-away att den bör normaliseras.
Föreslår att du skapar en tabell för produkttyper, en tabell för ordrar och en tabell för "orderkomponenter" (dvs. produkter).
evilaidMedlem sedan apr. 2009433 inlägg tack för tipsen, det är så jag har ritat upp det nu.. Man märker ju att det krävs en del planering när det blir lite större projekt och många parametrar som ska med..