bonjour,
comment memoriser la valeur d'une variable dans une table à un instant T?
merci.
bonjour,
comment memoriser la valeur d'une variable dans une table à un instant T?
merci.
j'ai oublié de dire que la variable est donnée par une vue
je ne suis pas sûr de comprendre quelle est la source et quelle est la destination, mais si tu veux enregistrer la valeur d'une vue dans une variable, c'est :
ou encore
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SET @toto = (SELECT truc FROM vue LIMIT 1) ;
Si c'est le contraire, ça donne qqch comme ça, pour peu que ta vue soit insérable :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT truc INTO @toto FROM vue LIMIT 1 ;
Est-ce que cela te fait avancer ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO vue (colonne) VALUES (@toto) ;
merci pour ta réponse mais je vais te donner un exemple, je veux stocker la valeur de mon stock matière après chaque mouvement de stock dans une table à part.
merci
Hello,
La requete que tu souhaites utiliser aurait été un meilleur exemple....
Si tu souhaites coupler une select et un insert en meme temps, je ne penses pas que cela soit possible... Du moins a ma connaissance...
Par contre je pense que tu dois pouvoir faire des calculs lors d'un INSERT
@+
cadou
PS : mais un vrai exemple c'est quand meme plus parlant
Bien sûr que si, c'est le bien nommé INSERT... SELECT :Envoyé par cadoudal56
http://dev.mysql.com/doc/refman/4.1/...rt-select.html
Si je comprends bien, tu as une tables des Matieres (IDmat, Stock) et une table Histo_Stocks (Dateheure, IDmat, Stock) ?Envoyé par acipeg
Après un mouvement de la matière 6, tu peux donc faire ça :
L'idéal serait de créer sur le AFTER UPDATE de la table Matieres un trigger de ce genre-là :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 INSERT INTO Histo_Stocks (DateHeure, IDmat, Stock) VALUES (NOW(), 6, (SELECT Stock FROM Matieres WHERE IDmat = 6)) ;
Btw, il n'y a aucune variable là-dedans !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 INSERT INTO Histo_Stocks (DateHeure, IDmat, Stock) VALUES (NOW(), new.IDmat, new.Stock) ;
Partager