koppla två attribut till samma i en annan tabell.. i den "nya" tabellen så är det på många sidan.. och isf hur?
ex.
[tabell1 med attibut1] 1:n till [tabell 2 med attibut1] samt n:1 [tabell3 attibut 1]
om ni försår =)
25 svar · 603 visningar · startad av MizzK
koppla två attribut till samma i en annan tabell.. i den "nya" tabellen så är det på många sidan.. och isf hur?
ex.
[tabell1 med attibut1] 1:n till [tabell 2 med attibut1] samt n:1 [tabell3 attibut 1]
om ni försår =)
Håller med föregående talare, om du inte talar om JOIN?
Man kan skapa relationer ja!
Men försök gärna förklara igen, och med ett exempel.
se filen jag skickar med.. så ser ni hur jag menar.. sen om det går hur vet den var den skall ta informationen ifrån, kan man ställa in så att det är antingen produkt1 eller produkt2 ??
Hmm. Om du skall göra något slags affärssystem så är inte detta det bästa?
tbl_orders
ID
customer
blablabal
tbl_all_products_that_is_ordered
ID
orderID
productID
tbl_products
ID
product_name
Tänker jag rätt eller tänker du fel? ;)
nja, inte riktigt så jag har tänkt.. men d var inte en dum ide det heller.. just nu är det så att vi har två olika typer av prdukter.. hyrprodukter ex. filmer, spel och dyligt, samt en tabell med livsmedelsprdukter.. och dessa vill jag ha i olika tabeller, men i order ha båda produkterna kopplade
har samma problem i en tabell som heter försäljning.. där man registerar alla försäljningar till kunder...
Det är väl bara att ange i tabellen orders vilken tabell man skall hämta produkten ifrån.
tbl_orders
ID | get_product_from_tabel_nr | ProductID
tbl_product_1
ID | name
tbl_product_2
ID | name
MizzK skrev:
nja, inte riktigt så jag har tänkt.. men d var inte en dum ide det heller.. just nu är det så att vi har två olika typer av prdukter.. hyrprodukter ex. filmer, spel och dyligt, samt en tabell med livsmedelsprdukter.. och dessa vill jag ha i olika tabeller, men i order ha båda produkterna kopplade
Man skulle kunna tänka sig att ha både hyr- och livsmedel i samma tabell, där en kolumn får ange vilket av alternativen det är. Eller så skulle man kunna tänka sig att ha två olika kolumner i ordertabellen, vilka refererar till varsin produkttabell.
cyprys hur gör man det??
I kolumnen anger du tabellnamnet helt enkelt.
ID | get_product_from_tabel_nr | ProductID
2 | prod1 | 45
3 | prod1 | 63
4 | prod2 | 45
och sen hämtar du rätt tabell beroende på vilken slags SQL-sats du skall köra.
och var drar man relationen??
cyprys skrev:
I kolumnen anger du tabellnamnet helt enkelt.
ID | get_product_from_tabel_nr | ProductID
2 | prod1 | 45
3 | prod1 | 63
4 | prod2 | 45och sen hämtar du rätt tabell beroende på vilken slags SQL-sats du skall köra.
Hur hanterar databasen om du raderar bort produkt 45 i prod1-tabellen? Då borde den påpeka att det finns rader i order-tabellen som refererar till just den produkten endast i de fall där order-raderna innehåller både 45 och prod1. Inte i de fall där de innehåller 45 och prod2. Går det verkligen att sätta upp en sådan FK? Det känns som om det är enklare att modellera databasen på något annat vis, tex så som jag föreslog.
Eller så som jag sa i början ja.
cyprys ursprungliga förslag tillsammans med en tabell typ borde göra precis vad du vill.
TYP
typnr beskr
1 livsmedel
2 filmer
3 spel
...
PRODUKTER
id namn typ
1 mjölk 1
2 soppa 1
3 Ronja Rövardotter 2
4 Destroy the Empire XXII 3
ORDER
id kund ...
1 ICA ...
2 Speltokig ...
BESTÄLLT
ordID prodID ....
1 1
1 2
2 4
red: Få kolumnerna något så när raka...
det är ett "måste" att ha 2 st produkt tabeller, så d går inte att slå ihop dem...
Använd i så fall två kolumner som får referera till varsin tabell:
order
--------------
id
prod1 FK
prod2 FK
aasah i ditt exempel hur kopplar man d olika produktrerna till typ???
*nya uppdatering *
tänkte fel när jag såg ditt ex.. tänkte att du gjorde på ett annat sätt, nämligen att typ betydde namnen på produkt tabellerna =)