[VB] Probleme VB et base de donnée

Probleme VB et base de donnée [VB] - VB/VBA/VBS - Programmation

Marsh Posté le 11-11-2002 à 18:41:42    

Voila j'ai une base de donnée avec comme champs : nombre de chambre (NBchambre) et couleur chambre (CoulChamb) mon probleme est : Comment faire pour le cas oú ils y auraient 3 chambres qu'ils me crée donc 3 champ couleurs (CoulChamb1,CoulChamb2,CoulChamb3...etc...)
 
chuis vachement perdu.... :??:


Message édité par Turk182 le 11-11-2002 à 18:42:04

---------------
Mes mémoires de Retrogamer - Le Retroblog de Turk182! en livres - Suivez le blog sur Facebook
Reply

Marsh Posté le 11-11-2002 à 18:41:42   

Reply

Marsh Posté le 11-11-2002 à 18:50:18    

turk182 a écrit a écrit :

chuis vachement perdu.... :??:




Oui, moi aussi....
 
Déja tu sembles confondre Base de données et Table. Une base de données = plusieurs tables.
Apparemment, tu as une table qui indique le nombre de chambres et la couleur de la chambre.
A mon avis, tu peux virer le nombre de chambres de ta table, sachant qu'il sera renvoyé par une requete de style SELECT COUNT (*)...
 
Donc, je te propose la structure suivante pour ta table Chambre :
 
Chambre
---------
ID
Couleur
 
Avec ID = clé primaire de la table. Comme ça, à chaque nouvelle chambre, tu n'as plus qu'a insérer les infos correspondantes :  
 
INSERT INTO Chambre VALUES (1, 'Rouge';);
INSERT INTO Chambre VALUES (2, 'Vert';);
 
Etc...
 
Et pour récupérer le nombre de chambres :  
 
SELECT ID, Count (*) FROM Chambre GROUP BY Couleur
 
Et un conseil : penche toi un peu sur la structure des bases de données, il ne suffit pas de dire "J'ai une base de données" quand tu n'as qu'une table, c'est bcp plus complexe que ça ...
 
http://www.developpez.com/sgbd/index.htm
 
 :hello:


Message édité par Harkonnen le 11-11-2002 à 18:51:34

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 11-11-2002 à 18:52:16    

C'est le codage des instructions qui fait ça....
 
Je sais pas quelle est la structure et le code.
 
Ecrit_NBchambre_ds_base
for i% = 1 to NBchambre
  Ecrit_Couleur[i%]_ds_base
end for
 
Pour relire, c'est pareil. Le champ NBchambre sert alors à savoir combien de champs Couleur[] suivent.
 

Reply

Marsh Posté le 11-11-2002 à 18:56:36    

En fait le champ NbChambre sert a savoir combien il y a de chambre dans une maison car la table est "MAISON" et contient deja plusieur champs ( cuisine, WC etc...) ....par exemple j'ai une maison a 3 chambre mais avec une couleur differente....il faudrait que je puisse rentrer les 3 couleur et que plus tard lors d'une recherche de chambre "rouge" une de mes 3 chambre sorte...
 
desolé pour le lapsus Base de donnée et Table...


Message édité par Turk182 le 11-11-2002 à 18:58:56

---------------
Mes mémoires de Retrogamer - Le Retroblog de Turk182! en livres - Suivez le blog sur Facebook
Reply

Marsh Posté le 11-11-2002 à 19:00:39    

turk182 a écrit a écrit :

En fait le champ NbChambre sert a savoir combien il y a de chambre dans une maison....par exemple j'ai une maison a 3 chambre mais avec une couleur differente....il faudrait que je puisse rentrer les 3 couleur et que plus tard lors d'une recherche de chambre "rouge" une de mes 3 chambre sorte...



C'est bien ce que je te dis : tu dois créer une table chambre isolée, et ne pas indiquer le nombre de chambres.
Dans une base de données, la règle d'or est que chaque table doit si possible correspondre à un élément indivisible.
Et si tu veux les chambres rouges, rien de plus simple avec la structure que je t'ai indiqué :
 
SELECT * FROM Chambre WHERE Couleur = 'Rouge';


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 12-11-2002 à 09:17:02    

Harkonnen a écrit a écrit :

 
C'est bien ce que je te dis : tu dois créer une table chambre isolée, et ne pas indiquer le nombre de chambres.
Dans une base de données, la règle d'or est que chaque table doit si possible correspondre à un élément indivisible.
Et si tu veux les chambres rouges, rien de plus simple avec la structure que je t'ai indiqué :
 
SELECT * FROM Chambre WHERE Couleur = 'Rouge';




 
Non en fait c'est pas vraiment ca que je cherche...j'ai une BD Localization avec comme table : Resto, maison, hotel etc...Dans ma table MAISON j'ai des champs comme proprietaire, WC, chambre, jardin etc.... et donc je voudrais y rajouter un champs qui me donnerai le nb de chambre qu'il y a dans une maison et la couleur de chacune d'elle....  
 
Donc le pb est comment creer un champs depuis VB5 en fonction du nb de chambre rentré auparavent ? Car si il y a qu'une chambre a chaque fois....facile ....un champ ( CoulChambre ) ...mais dans le cas ou le nombre de chambre est defini par l'utilisateur....faudrait pouvoir rentrer la couleur de chacune d'elle dans le même recordset....chais pas si je m'explique bien....


---------------
Mes mémoires de Retrogamer - Le Retroblog de Turk182! en livres - Suivez le blog sur Facebook
Reply

Marsh Posté le 12-11-2002 à 09:27:22    

j'avais pas fait gaffe à la signature... wargame detected...
 
que diriez vous d'une petite partie d'échecs? ;-)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 12-11-2002 à 09:37:42    

drasche a écrit a écrit :

j'avais pas fait gaffe à la signature... wargame detected...
 
que diriez vous d'une petite partie d'échecs? ;-)




 
 ;)


---------------
Mes mémoires de Retrogamer - Le Retroblog de Turk182! en livres - Suivez le blog sur Facebook
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed