Article View: be.comp.programming
Article #1724Re: De ultieme adres-databank ?
From: Floris Kruisselbrink
Date: Thu, 16 Dec 2004 10:24
Date: Thu, 16 Dec 2004 10:24
52 lines
3339 bytes
3339 bytes
Paul van der Vlis wrote: > Yorn de Jong schreef: > >> Ik heb zelf een soortgelijk probleempje: >> >> Ik heb tabel users: >> user_id: bigint >> <hier komt nog meer info over de gebruiker, doet er niet toe >> >> tabel extra_velden >> veld_id: bigint >> veldnaam: varchar >> >> tabel extra_opties >> user_id: bigint >> veld_id: bigint >> waarde: tsja, wat doe ik hier? varchar? > > Vertel eens wat voor soort waardes je erin wilt stoppen. Een datum is > gewoon iets anders dan een foto of een ja/nee vraag. > >> en ook natuurlijk nog het probleem dat je dit nooit mooi met een query >> in 1x kan opvragen > > (voor wie het nog niet begrepen had, bij extra_velden worden er velden > > gedefineerd die eventueel aan een gebruiker toegewezen kunnen worden, > > bijvoorbeeld geboorteplaats. > > In extra_opties vind deze link plaats. user_id het gebruikersnummer, > > veld_id de identificatie voor wat er gedefineerd wordt, en in waarde de > > waarde, maar wat voor veldtype moet dat worden, en hoe krijg ik er in > > de resultaten van de SELECT query een veld "geboorteplaats" erbij > > (bijvoorbeeld)) > > Met queries kun je heel veel (alles), maar inderdaad, je hebt soms > meerdere queries nodig. Waarom is dat een probleem? > Vertel eens waarom je het niet in 1 tabel zet? Iedere gebruiker heeft > een geboorteplaats. > > Stel je wilt de "kinderen" van die users in een aparte tabel zetten, dan > is het logisch. Want users kunnen veel kinderen hebben. Dat is nou juist helemaal niet logisch. Die kinderen zijn ook mensen, en kun je dus in principe exact dezelfde gegevens voor opslaan, dus zou ik dat in dezelfde tabel stoppen. Wat je wel in een andere tabel wilt is de relaties tussen de personen. Maak b.v. een tabel user_rel aan met drie velden, first_id, second_id, relation_type. Met een relation_type van b.v. "parent_of" geef je aan dat de user in de user-table met userid first_id de vader/moeder is van second_id. Zo is het meteen mooi uitbreidbaar naar getrouwd, gescheiden, of wat voor andere relaties je in de toekomst ook nog maar kunt verzinnen Floris.
Technical Details
Message-ID:
<1521381.RbQKaMA89x@vloris.nl.eu.org>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!feeder.enertel.nl!nntpfeed-01.ops.asmr-01.energis-idc.net!131.211.141.196.MISMATCH!humbolt.nl.linux.org!news.nl.linux.org!not-for-mailReferences:
<41a5e0c8$0$44067$5fc3050@dreader2.news.tiscali.nl> <41c0a698$0$566$e4fe514c@news.xs4all.nl> <41c1486d$0$568$e4fe514c@news.xs4all.nl>Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,d91871937ce7a30c X-Google-Thread: 106397,d91871937ce7a30c X-Google-Attributes: gidfcea4,gid106397,public X-Google-Language: DUTCH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!feeder.enertel.nl!nntpfeed-01.ops.asmr-01.energis-idc.net!131.211.141.196.MISMATCH!humbolt.nl.linux.org!news.nl.linux.org!not-for-mail From: Floris Kruisselbrink <nospam@vloris.nl.eu.org> Newsgroups: be.comp.programming,nl.comp.os.linux.programmeren Subject: Re: De ultieme adres-databank ? Date: Thu, 16 Dec 2004 11:24:39 +0100 Organization: Nl.linux.org Dutch Linux News Lines: 52 Message-ID: <1521381.RbQKaMA89x@vloris.nl.eu.org> References: <41a5e0c8$0$44067$5fc3050@dreader2.news.tiscali.nl> <41c0a698$0$566$e4fe514c@news.xs4all.nl> <41c1486d$0$568$e4fe514c@news.xs4all.nl> Reply-To: usenet@vloris.nl.eu.org NNTP-Posting-Host: cc9952-a.ensch1.ov.home.nl Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Trace: humbolt.nl.linux.org 1103192680 1325 212.120.124.15 (16 Dec 2004 10:24:40 GMT) X-Complaints-To: news@nl.linux.org NNTP-Posting-Date: Thu, 16 Dec 2004 10:24:40 +0000 (UTC) User-Agent: KNode/0.8.2