{MySQL} creation base de données

Résolu/Fermé
YAKA2009 Messages postés 17 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 9 janvier 2016 - 5 sept. 2009 à 18:39
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 - 8 sept. 2009 à 08:49
SELECT sum( t_tarif.tarif * t_planning.nb_jours )
FROM t_parent, t_enfant, t_tarif, t_planning
WHERE t_enfant.id_parent = t_parent.id_parent

SELECT *
FROM t_enfant, t_parent, t_activite, t_planning, t_tarif,
WHERE t_enfant.id_parent = t_parent.id_parent
LIMIT 0 , 30


Merci Tonio pour ta proposition.
j'ai créé des tables en reprenant ton exemple (voir le code en fin de msg)
j'ai utilisé la requete ci dessous mais j'ai un message d erreur je pense avoir un pb au niveau des clés

Select sum(tarif) from t_parent, t_enfant, t_tarif,
where id_parent.t_parent=id_parent.t_enfant


l'objectif est d'avoir un tabelau qui ressemble à ceci :

prenom enfant ! nom enfant ! prenom parent ! nom parent ! adresse ! activite 1 ! nbre_jours ! tarif ! solde

le solde = tarif activite * nbre_jours.

pour la saisie
sur cette vue le nbre de jours doit être modifiable et le solde se mettre à jour.

pour le publipostage : seul les enregsitrements avec un solde > 0 s'affcihent.


CREATE TABLE `bd_mabase`.`t_enfant` (
`id_enfant` INT NOT NULL AUTO_INCREMENT ,
`prenom` VARCHAR( 30 ) NOT NULL ,
`nom` VARCHAR( 30 ) NOT NULL ,
`id_parent` INT NOT NULL ,
`id_activite` INT NOT NULL ,
`id_tarif` INT NOT NULL ,
PRIMARY KEY ( `id_enfant` , `id_parent` , `id_activite` , `id_tarif` )
) ENGINE = MYISAM


CREATE TABLE `bd_mabase`.`t_parent` (
`id_parent` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`titre` VARCHAR( 20 ) NOT NULL ,
`prenom` VARCHAR( 30 ) NOT NULL ,
`nom` VARCHAR( 30 ) NOT NULL ,
`adresse1` VARCHAR( 30 ) NOT NULL ,
`adresse2` VARCHAR( 30 ) NULL ,
`cp` VARCHAR( 5 ) NOT NULL ,
`ville` VARCHAR( 20 ) NOT NULL);


CREATE TABLE `bd_mabase`.`t_activite` (
`id_activite` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`code_activite` INT NOT NULL ,
`nom` VARCHAR( 30 ) NOT NULL);

CREATE TABLE `bd_mabase`.`t_tarif` (
`id_tarif` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`tarif` VARCHAR( 30 ) NOT NULL);



CREATE TABLE `bd_mabase`.`t_planning` (
`id_planning` INT NOT NULL AUTO_INCREMENT,
`Nb_jours` INT NOT NULL ,
`id_activite` INT NOT NULL ,
`id_enfant` INT NOT NULL ,
PRIMARY KEY ( `id_planning` , `id_activite`, `id_enfant`)
) ENGINE = MYISAM ;

Select sum(tarif) from t_parent, t_enfant, t_tarif,
where id_parent.t_parent=id_parent.t_enfant
A voir également:

3 réponses

CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
7 sept. 2009 à 09:08
Bonjour,

Tu as besoin d'aide pour corriger ton erreur Sql?
0
YAKA2009 Messages postés 17 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 9 janvier 2016 1
7 sept. 2009 à 18:05
Oui Capit merci de m aider pour la structure de la base de données et pour la requete sql
0
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
8 sept. 2009 à 08:49
Mauvaise :

Select sum(tarif) from t_parent, t_enfant, t_tarif,
where id_parent.t_parent=id_parent.t_enfant

Bonne :

Select sum(tarif) from t_parent, t_enfant, t_tarif,
where t_parent. id_parent=t_enfant. id_parent;

Toujours mettre la table avant l'id dans une liason de table.
0