Vinnaren i pepparkakshustävlingen!
2009-03-24, 02:16
  #1
Medlem
Hej!

Håller på att göra en liten sida för recensioner... Nu vill jag att alla recensioner ska kunna tillhöra flera kategorier och inte bara en hur får jag till det på bästa sätt i min databas?
Har testat detta..
http://www.jayser.se/asd.jpg
..men får det inte att fungera som jag vill
Citera
2009-03-24, 19:59
  #2
Moderator
Protons avatar
Grundläggande databasmodellering alltså

Det du vill ha är en tabell innehållandes endast 2 attribut, reviewid och categoryid. Dessa två attribut kommer tillsammans att utgöra primärnyckel i denna tabell. På så sätt kommer databasen även att hindra dej från att göra dumheter med

Denna tabell ska alltså sitta mellan review och category och koppla ihop dessa två tabeller.
Citera
2009-03-25, 00:32
  #3
Medlem
ja det blir alltså en sammansatt nyckel hur fixar man det i MSSQL? har aldrig förstått hur man gör det...
Citera
2009-03-25, 01:07
  #4
Medlem
Mmm vet hur jag ska göra där nu, men problemet blir när jag ska visa alla recensioner. Då får jag ju fram två av samma om de tillhör två kategorier. finns det någon sql fråga som fixar så att det står både action och comedy för recension...så att jag bara får upp en recension
Citera
2009-03-25, 11:39
  #5
Moderator
Protons avatar
SELECT DISTINCT kommer till din hjälp gissar jag

I vilket fall om helst kommer du nog få svårt att i samma SQL få ut alla kategorier till en recension, men jag gissar at detta inte var avsikten heller. för att få ut alla kategorier blir du alltså tvungen att för varje recensionsid köra en till SQL som tar fram dina kategorier som detta id har, fast det kanske inte var aktuellt här å nu?
Citera
2009-03-25, 15:11
  #6
Medlem
Jo det är väldigt aktuellt, vill ju kunna se alla kategorier som tillhör en viss recension. hur skriver man en sådan fråga?
Citera
2009-03-26, 06:34
  #7
Moderator
Protons avatar
Om man nu, av okänd anledning, skulle vilja ha ut endast en recensionsid och alla kategorier i en rad i ditt recordset hade man i mysql använt GROUP_CONCAT. Vad man använderr i MsSQLför samma funktionalitet har jag inte en aning om.

Googlade lite å hittade nån som hade fixat ihop nån liten SP som kunde göra samma sak som mysqls inbyggda dito, men det verkar inte finnas nåt enkelt sätt att göra det på vad jag kunde hitta?
Citera
2009-03-29, 17:15
  #8
Medlem
Ja naj, det verkar inte finnas något enkelt sätt att fixa detta i MSSQL så får ta att ställa en fråga enbart för att få ut kategorierna ... å binda den till en egen datakontroll...
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback