Mysql: Remplir une table par une autre

loulou -  
briiiiix Messages postés 624 Statut Membre -
Bonjour,
Bonjour j'ai deux tables, a et b, dans la table a il y deux champs, ref et prix, dans la table b il y a aussi les deux champs ref et prix, ma question est la suivante, je voudrais que faire une requete qui remplisse le champs prix de b en allant le chercher de la table a apres avoir comparé les ref, exemple, dans la table b il y a la ref 001, il va aller chercher cette ref dans la table a, voir le prix correspodant et le mettre aussi dans le champ prix de cette ref dans la table b. Est ce possible ? Merci de me repondre.

4 réponses

briiiiix Messages postés 624 Statut Membre 18
 
Bien sure que c'est possible mais une question avant: est ce que dans la table b tes ref sont deja mentionnées ?
0
loulou
 
En fait c'est un formulaire qui envois le choix de la ref de B, je veux qu'après avoir enregistré la ref de b, la requete aille importer de a le prix.
0
ezzine
 
tu déclare un curseur:

cursor curseur is select b.ref from b
prix a.prix%type

for compteur in curseur loop
select a.prix into prix from a where a.ref=compteur.ref
compteur.prix=prix
end loop
0
briiiiix Messages postés 624 Statut Membre 18
 
Je vais essayer de te répondre en fonction des informations que tu vien de mentionner:

normalement tu as une requete d'insertion dans la table b: (je donne juste un exemple)
Tu as aussi la valeur de la ref qu'on va appeler $ref
avant de commencer a remplire b on cherche le prix dans a en qui correspond a l'enregistrement ayant la reference $ref:

$req = mysql_query("select * from a where where ref = '$ref' "); // on cherche l'enregistrement en question
$res = mysql_fetch_array($req); // on recupere l'enregistrement sous forme de tableau
$prix = $res['prix']; // On recupere la valeur prix

// Puis on inserre les valeurs
"insert into a (ref, prix) values ('$ref', '$prix')";

Voila
0