Registreer FAQ Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 31-01-2005, 20:54
Verwijderd
Hallo

Voor school moet ik een webwinkel maken. Hier onder is de structuur van mijn MySQL database.

De pijlen zijn de links en waar een S achterstaat zijn de sleutels.
Nu is mijn vraag hoe moet ik het invoeren? Ik heb de codes voor de tabellen algeschreven maar de pijlen zijn relaties lijkt mij, hoe stel ik die vast in MySQL.



De codes zijn hieronder

MySQL Database aanmaken Creëren

1 Database aanmaken:
Create database database_webshop

2 Database openen
use database_webshop

2. Gegevens invoegen

Tabel artikel
create table artikel (
artikelnummer int(10)not null,
omschrijving varchar(40)not null,
fabrikantid int(10)not null,
primary key(artikelnummer));


Tabel groep
create table groep (
artikelnummer int(10)not null,
hoofdgroepid int(10)not null,
subgroepid int(10)not null,
primary key(artikelnummer));


Tabel hoofdgroep

create table hoofdgroep (
hoofdgroepid int(10)not null,
omschrijving varchar(20)not null,
);


Tabel subgroep

create table subgroep (
artikelnummer int(10)not null,
hoofdgroepid int(10)not null,
subgroepid int(10)not null,
);


Tabel fabrikant

create table fabrikant (
fabrikantid int(10)not null,
naam varchar(20)not null,
primary key(fabrikantid));


Tabel prijs

create table prijs (
artikelnummer int(10)not null,
verkoopprijs decimal(7,2)not null,
primary key(artikelnummer));
Met citaat reageren
Advertentie
Oud 31-01-2005, 22:18
Fade of Light
Avatar van Fade of Light
Fade of Light is offline
gewoon bij het invoeren ervoor zorgen dat de primaire keys/waarden gelijk zijn. Dus als je in tabel A een id=1 invoegt en die heeft een relatie met tabel B, dan daar ook de id=1 toevoegen.

Eigenlijk moet je een nieuwe tabel zetten met de keys van tabel A en keys van tabel B gecombineerd.

Stel:
Tabel A:
varA1(primaire sleutel), varA2,varA3,varA4 etc

Tabel B:
varB1(primaire sleutel),varB2,varB3,varB4, etc

Dan moet je een relatietabel hebben:
Tabel ArelatieB
varA1,varB1

en als een record in tabel A gerelateerd is aan een record in tabel B. Dan zet je de waarde van de variabele varA1 en die van varB1 van de records die aan elkaar gerelateerd zijn in tabel ArelatieB.

Maar als varA1 en varB1 toch id's zijn en altijd tegelijk oplopen, dan kan je die ArelatieB wegjassen en gewoon de id's direct synchroon laten lopen.

Als ik het goed heb...ben beetje moe nu
Met citaat reageren
Oud 31-01-2005, 22:43
quotes are bad
quotes are bad is offline
kan alleen bij InnoDB tabellen (in nieuwere MySQL versies)

http://dev.mysql.com/doc/mysql/en/ex...eign-keys.html

maar je hoeft relaties natuurlijk niet perse aan te geven bij het maken van je tabellen zoals fade of light zegt.. joinen kan altijd, maar de integriteit moet je dan zelf bewaken
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar

Soortgelijke topics
Forum Topic Reacties Laatste bericht
Software & Hardware [Software] Mailserver (voor linux) met db?
ekki
27 07-09-2005 22:01
Software & Hardware [php] zoeken en 2 tabellen samenvoegen
Destralak
11 06-08-2005 13:28
Software & Hardware [PHP] Statistiekenscript
Martin
7 22-12-2003 11:23
Lifestyle Nerds
Verwijderd
191 11-06-2003 16:42
Software & Hardware sql/phpmyadmin
pietje63
3 01-02-2002 16:43
Software & Hardware mysql veranderen
pietje63
11 03-01-2002 11:45


Alle tijden zijn GMT +1. Het is nu 07:40.