Bonjour à tous !
Alors j'ai un petit problème pour ce qui est de comprendre les relations entre clés primaires et clés étrangères.
Je m'explique, dans le cadre d'un projet je dois faire un petit INTRANET qui comprend entre autres la fonction d'associer une catégorie de demande (Que les gens font pour râler) à un destinataire.
Les IDs de ces deux 'trucs' bénéficient chacuns d'une table à eux, respectivement :
- sujet_demande (Avec l'ID du sujet de la demande en clef primaire autoincrementée sous le petit nom du champ : id_sujet_demande)
- destinataire (Avec l'ID du destinataire [clé primaire aussi] lui même autoincrémenté qui s'appelle : id_destinataire)
On retrouve donc ces deux champs en clés étrangères dans la table : destinataire_sujet
Seulement je ne comprends absolument pas comment faire pour qu'une fois une catégorie de demande ajoutée, par exemple, son ID se retrouve dans le champ 'clé secondaire' de la table destinataire_sujet
Est-ce qu'il y a une requête particulière à faire, un ordre ?
Je patauge complètement là...
Alors quelque bouts qui pourront vous servir maintenant :
-- Structure de la table `destinataire`
--
DROP TABLE IF EXISTS `destinataire`;
CREATE TABLE IF NOT EXISTS `destinataire` (
`ID_DESTINATAIRE` smallint(5) unsigned NOT NULL auto_increment,
`NOM` varchar(20) NOT NULL,
`PRENOM` varchar(20) NOT NULL,
`POSTE` varchar(70) default NULL,
`EMAIL` varchar(150) NOT NULL,
PRIMARY KEY (`ID_DESTINATAIRE`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;-- Structure de la table `demande`
--
DROP TABLE IF EXISTS `demande`;
CREATE TABLE IF NOT EXISTS `demande` (
`ID_DEMANDE` int(10) unsigned NOT NULL auto_increment,
`ID_SUJET_DEMANDE` smallint(5) unsigned NOT NULL,
`NOM` varchar(20) NOT NULL,
`PRENOM` varchar(20) NOT NULL,
`EMAIL` varchar(150) NOT NULL,
`MESSAGE` text NOT NULL,
`DATE_DEPOT` timestamp NOT NULL default CURRENT_TIMESTAMP,
`DATE_RENVOI` datetime default NULL,
PRIMARY KEY (`ID_DEMANDE`),
KEY `DEMANDE_SUJET_FK` (`ID_SUJET_DEMANDE`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;Voilà, je vous remercie d'avance pour votre aide !-- Structure de la table `destinataire_sujet`
--
DROP TABLE IF EXISTS `destinataire_sujet`;
CREATE TABLE IF NOT EXISTS `destinataire_sujet` (
`ID_SUJET_DEMANDE` smallint(5) unsigned NOT NULL,
`ID_DESTINATAIRE` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`ID_SUJET_DEMANDE`,`ID_DESTINATAIRE`),
KEY `DESTINATAIRE_SUJET2_FK` (`ID_DESTINATAIRE`),
KEY `id_sujet_demande2_fk` (`ID_SUJET_DEMANDE`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Partager