Vinnaren i pepparkakshustävlingen!
2012-02-09, 12:48
  #1
Medlem
hundkatts avatar
Hej,

Sitter och bygger ett schema och jag funderar lite hur jag skall göra när jag har en klass som har två subklasser som ska ärva från den.
Subklasserna är "Admin" och "Customer" och huvudklassen heter "User". Jag har inte kopplat något med hjälp av arv innan så jag vet inte riktigt hur jag skall gå till väga. Är det alter table som gör att jag kan "connecta" dom eller är jag ute och cyklar?

Tack på förhand!

Detta är vad jag har skissat upp än så länge:

Citera
2012-02-09, 15:30
  #2
Medlem
valter-eggons avatar
För det första så tycker jag inte att du ska ha username som PK. Gör ett USER_ID INTEGER som PK.

Vidare skulle jag skapa en tabell som heter ROLE
ROLE_ID INTEGER,
ROLE_NAME VARCHAR(20)
Där har du:
ROLE_ID=1 ROLE_NAME= Admin
ROLE_ID=2 ROLE_NAME= Customer

I USER-tabellen har du sedan en FK till ROLE.ROLE_ID

Mina tankar kring det hela.

Edit: Alternativt skulle du kunna ha i USER:
IS_ADMIN CHAR(1) eller BIT men då blir det svårare att lägga till nya roller i systemet.
__________________
Senast redigerad av valter-eggon 2012-02-09 kl. 15:33.
Citera
2012-02-09, 17:15
  #3
Medlem
hundkatts avatar
Ah okej, ja så kan man ju också göra. Fast jag är mer intresserad att lära mig hur man kopplar arv. Hur ska jag göra då för att koppla admin och customer till user?
Citera
2012-02-09, 20:14
  #4
Medlem
valter-eggons avatar
Jag förstår faktiskt inte vad du menar när du säger arv.
Citera
2012-02-09, 20:29
  #5
Medlem
dethalvabarnets avatar
http://stackoverflow.com/questions/1...-in-a-database
Citera
2012-02-10, 08:47
  #6
Medlem
valter-eggons avatar
Citat:
Ursprungligen postat av hundkatt
Ah okej, ja så kan man ju också göra. Fast jag är mer intresserad att lära mig hur man kopplar arv. Hur ska jag göra då för att koppla admin och customer till user?
Läs även svaret under det accepterade svaret.
Citat:
Ursprungligen postat av dethalvabarnet
http://stackoverflow.com/questions/1...-in-a-database
Citera
2012-02-10, 18:42
  #7
Medlem
hundkatts avatar
Tackar, ursäkta mitt språkval men jag fick svar på frågan! Skitmycket tack!
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