Lancer deux requêtes successivement

Résolu
transfix -  
 RATCHKOV -
Bonjour,


mon besoin créer un enregistrement dans une nouvelle table suite à une sélection par critère puis tout de suite faire une mise à jour des champs dans l'enregistrement crée.
les requêtes suivantes font cela mais en deux temps est il possible de les concaténer
INSERT INTO COMIntim8 ( N°Cde )
SELECT Tresorerie.N°Cde
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) And ((Tresorerie.NOBord2)>0) And ((Tresorerie.SOLDé)='o'));

UPDATE COMIntim8 SET COMIntim8.MontantCalc = ((Acomptereçu+soldereçu)*0.3), COMIntim8.DateCom = "CURRENT_DATE", COMIntim8.Encaisprévu = (DateCOm+90)
WHERE (((COMIntim8.N°cde)>0));
MErci réponse (si vous me répondez macro je ne sais pas comment ça marche)

6 réponses

transfix2
 
ça marche avec la syntaxe suivante
INSERT INTO COMIntim8 ( N°Cde, MontantCalc, datecreation, DateEncaisPrevu )
SELECT Tresorerie.N°Cde, ((Acomptereçu+soldereçu)*0.3) AS Expr1,date() AS Expr2,date()+90 AS Expr3
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) AND ((Tresorerie.NOBord2)>0) AND ((Tresorerie.SOLDé)='o'));

merci pour votre aide
1
RATCHKOV
 
En fait je voudrais créer une formulaire à partir de la requête issue de deux tables : (Chercheur d'emploi) et ( Diplomes) liées par un Id de telle façon que chaque chercheur apparaisse sur une seule ligne avec les 3 diplomes affichés respectivement sur les colonnes : Diplome1- Diplome2 - Diplome3 (Chaque chercheur peut avoir plusieurs diplome). autrement dit, je veux pas que le méme chercheur se répéte trois fois. {ce que j'ai utilisé au niveau de la requête c'est le regroupement par le critére : premier dans la colonne (diplome1) et le critére dernier dans la colonne (diplome3 mais comment faire la colonne (diplome2)}?
0
RATCHKOV
 
En fait je voudrais créer une formulaire à partir de la requête issue de deux tables : (Chercheur d'emploi) et ( Diplomes) liées par un Id de telle façon que chaque chercheur apparaisse sur une seule ligne avec les 3 diplomes affichés respectivement sur les colonnes : Diplome1- Diplome2 - Diplome3 (Chaque chercheur peut avoir plusieurs diplome). autrement dit, je veux pas que le méme chercheur se répéte trois fois. {ce que j'ai utilisé au niveau de la requête c'est le regroupement par le critére : premier dans la colonne (diplome1) et le critére dernier dans la colonne (diplome3 mais comment faire la colonne (diplome2)}?
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
Bonjour

Tu travaille sous quel SGBD
0
transfix
 
Bonjour
access 2007
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Bonjour,

Je ne sais pas si ce que je vais te donner fonctionne sous Access, mais il n'ya pas de raisons...
A priori je ferais comme ça :

INSERT INTO COMIntim8 ( N°Cde, MontantCalc, DateCom, Encaisprévu )
SELECT Tresorerie.N°Cde, ((Acomptereçu+soldereçu)*0.3), "CURRENT_DATE", "CURRENT_DATE"+90
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) And ((Tresorerie.NOBord2)>0) And ((Tresorerie.SOLDé)='o'));

Un petit bémol pour le Encaisprévu, je ne sais pas si cela fonctionnera. Mais au pire elle utilise des données statiques, donc pour le coup ça ne doit pas être trop gênant de faire une deuxième requête juste pour ce champ.

Xavier
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
Bonjour
Sous access tu fais t deux requetes
puis ensuite tu fais une macros qui execute t 2 requete l'une apres l'autre et le tour est joué
0
transfix
 
Désolé çà marche pas
le premier enregistrement de la base est crée mais les zones avec les dates ne sont pas mise à jour et lors d'une deuxième exécution il y a un message comme quoi il va créer un enregistrement et tout de suite derrière un message comme quoi il ne peut pas ajouter suite à une valeur nulle et violation de clé
merci réponse
0