En r�ponse � Klaus <[EMAIL PROTECTED]>:
> Salut,
>
> je souhaite �crire un annuaire avec des ressources internet pour
> l'allemand.
J'ai d�j� repondu une ou 2 fois � ta question, mais on peut essayer une 3eme fois ...
> et si j'en ai plusieurs, comment les lier ? Les possibilit�s que je
> vois:
>
> - une seule table: trop lourd,
Si tu le dis ... bizarre ta conclusion alors que tu te qualifies de d�butant dans le
domaine.
> - 10 tables: une pour chaque sous-cat�gorie, avec image, url et
> commentaire
Faudrait �tre compl�tement cr�tin, tu serais oblig� de d�velopper 10 fois la m�me
chose juste en changeant le nom de la table !
> - 3 tables: images_tbl, url_tbl et commentaire_tbl:
Heu, et tes cat�gories / sous cat�gories elles sont pass�es o� dans tes 3 tables ?
> comment le lier et
> exploiter ? J'ai vu des solutions dans Wrox "Php Professionnel" pour
> lier les tables "auteurs" et "documents" par une 3e table "auteursdoc" (p. 259),
> mais je suis pas s�r que c'est la bonne solution dans mon cas.
Ben non paske dans ton cas la bonne solution c'est deux tables !
dans le cas de auteurs et documents, on a la cardinalit� suivante :
Un auteur peut �crire plusieurs documents
Un document peut avoir �t� �crit par plusieurs auteurs
==> cardinalit� "n,n", ou en notation merise (0,n) (0,n)
Il faut donc une table qui serve de lien en contenant les identifiant de chaque table.
La table auteursdoc aura donc la structure :
create table auteursdoc(
auteurid integer not null references auteurs,
docid integer not null references doc);
create unique index idx_pk_auteursdoc(auteursid,docid);
Dans ton cas pr�cis, cela n'a (presque) rien � voir puisque :
une URL poss�de 1 et 1 seul commentaire
une URL poss�de 1 et 1 seule image
Donc URL, commentaire et images, c'est la m�me table !
Ensuite, la question se pose :
une URL est elle dans 1 et une seule sous cat�gorie ?
si par exemple l'URL du minist�re de la culture tu veux le mettre � la fois dans la
ss-categorie "Culture" et aussi "Administration" la reponse est NON.
Si une URL ne doit se trouver que dans une seule ss-categorie, la reponse est OUI.
Si la r�ponse est oui tu as 2 tables
Si la r�ponse est NON tu as 3 tables
voici la 1ere table qui est toujours valable :
1 tables qui contient categorie/ss-categorie :
create sequence seq_idcateg;
create table categories(
categ_id integer not null primary key default nextval('seq_idcateg'),
categ_parent integer, /* si c est une ss categ */
categ_name varchar);
La seconde table, si la reponse est OUI :
create table URL(
categ_id not null references categories, /*la sscateg a laquelle elle appartient*/
url varchar not null, /* http:// ... */
image varchar, /* nom du fichier image */
comment text);
Dans le cas de 3 tables, je te laisse deviner comment faire, tu as tout les �l�ments
qu'il faut dans ce post.
>
> J'ai d�j� pos� la question et j'ai re�u des r�ponses divergeantes
> (merci),
> mais comme je suis d�butant, j'ai du mal � comprendre. Donc svp, une
> solution
> simple et compr�hensible pour un n�ophyte.
> A fur et � mesure de progresser, � un moment donn�, j'aurai peut-�tre
> envie
> de construire des tables plus �labor�s, je ne sais pas si on peut
> pr�voir
> cette possibilit� (flexibilit�) d�s le d�but
>
> merci de vos r�ponses
> Klaus
>
>
>
>
>
>
--
H.Lefebvre [EMAIL PROTECTED]
LINUX : Ne jetez plus votre argent par les fen�tres !