Requete mysql

luky37 Messages postés 4 Date d'inscription vendredi 12 septembre 2003 Statut Membre Dernière intervention 13 mai 2004 - 10 janv. 2004 à 18:56
Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 - 10 janv. 2004 à 23:08
je possède 2 tables
- une concernant des oprérations bancaires simples : virements de
comptes à comptes;
- une aurte pour les comptes avec le solde
quelle doit etre le requete, la plus simple possible permettant de mettre
les soldes des comptes a jour en fonction des opérations non encore traitées
?

____________
| table OPB | (opérations bancaires)
|---------------|
| idoperation |
| idcompted | compte à debiter
| idcomptec | compte à crediter
| montant | montant du virement
| optraitee? | 0 si operation non traité, 1 si traitée|
| .... |
|_________ __|

____________
| table CMP | (comptes bancaires)
|---------------|
| idcompte |
| solde | solde du compte
| ....
|___________|

1 réponse

Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 1
10 janv. 2004 à 23:08
Je te met les requete comme ça : $BDD->requete car je pense que tu connais la syntaxe, ça me permet de gagner du temps

// D'abord tu récupère les opérations non traitées
$BDD->requete("SELECT * FROM OPB WHERE optraitee='0'");

while($tablo = $BDD->fetch_array())
{
// Crédite le compte A
$BDD->requete("UPDATE CMP SET solde solde + ".$tablo["montant"]." WHERE idcompte '".$tablo["idcomptec"]."');

// Débite le compte B
$BDD->requete("UPDATE CMP SET solde solde - ".$tablo["montant"]." WHERE idcompte '".$tablo["idcompted"]."');
}

Voilà en gros ce qu'il faut faire. Le traitement risque d'être long si t'as beaucoup d'opérations non traitées.

-------------------------------
Life is a game, Enjoy ! ^^
0
Rejoignez-nous