bonjour !
j'aimerai un conseil pour la structure d'une table dans ma base MySQL
j'ai 2 tables
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CREATE TABLE IF NOT EXISTS `table1` ( `Champ1` int(10) NOT NULL, `Champ2` int(10) NOT NULL, `Champ3` float(10,2) default :-° , `Champ4` int(10) NOT NULL default '1', PRIMARY KEY (`Champ1`,`Champ2`), KEY `Champ1` (`Champ1`), KEY `Champ2` (`Champ2`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ; ALTER TABLE `table1` ADD CONSTRAINT `table1_ibfk_2` FOREIGN KEY (`Champ2`) REFERENCES `table2` (`Champ1`) ON UPDATE CASCADE; ADD CONSTRAINT `table1_ibfk_1` FOREIGN KEY (`Champ1`) REFERENCES `tableX` (`Champ1`) ON UPDATE CASCADE;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 CREATE TABLE IF NOT EXISTS `Table2` ( `Champ1` int(10) NOT NULL auto_increment, `Champ2` varchar(10) collate utf8_unicode_ci NOT NULL, `Champ3` float(10,2) NOT NULL, PRIMARY KEY (`Champ1`), KEY `Champ3` (`Champ3`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ;
donc je voudrait que a la creation d'un element de la table1
que table1.Champ3 soit egal a table2.Champ3 automatiquement par defaut.
Que ce soit juste la valeur par défaut.
En cas d'update du champ3 sur base2, la valeur de base1.champ3 ne doit pas être modifiée.
j'espere que mes indication sont clair![]()
Partager