[ACCESS] Remplir une table avec résultat requ
Fermé
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
-
5 mars 2007 à 16:27
rhita - 5 févr. 2008 à 15:47
rhita - 5 févr. 2008 à 15:47
A voir également:
- [ACCESS] Remplir une table avec résultat requ
- Table ascii - Guide
- Table des matières word - Guide
- Organigramme a remplir word - Guide
- Resultat foot - Télécharger - Vie quotidienne
- Lexer resultat - Télécharger - Sport
13 réponses
blux
Messages postés
26819
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
29 avril 2025
3 335
5 mars 2007 à 16:39
5 mars 2007 à 16:39
Salut,
pour mettre à jour un champ :
UPDATE nom_table SET nom_champ = valeur WHERE condition ;
pour mettre à jour un champ :
UPDATE nom_table SET nom_champ = valeur WHERE condition ;
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
6 mars 2007 à 14:24
6 mars 2007 à 14:24
Merci, c'est super, ça marche !!!
2eme question
J'ai une requete de création de la table SESSION tel que :
SELECT LOGAPP.IDLOG, LOGAPP.DATELOG INTO [SESSION]
FROM LOGAPP
GROUP BY LOGAPP.IDLOG, LOGAPP.DATELOG;
Je pense qu'il est possible de définir dans cette requête la clé primaire de la table SESSION ainsi que la relation entre la table SEESION et LOGAPP:
SESSION.NSESSION primary key en numéroauto
SESSION.IDSESSION=LOGAPP.IDLOG
Comment faire ?
Merci par avance
2eme question
J'ai une requete de création de la table SESSION tel que :
SELECT LOGAPP.IDLOG, LOGAPP.DATELOG INTO [SESSION]
FROM LOGAPP
GROUP BY LOGAPP.IDLOG, LOGAPP.DATELOG;
Je pense qu'il est possible de définir dans cette requête la clé primaire de la table SESSION ainsi que la relation entre la table SEESION et LOGAPP:
SESSION.NSESSION primary key en numéroauto
SESSION.IDSESSION=LOGAPP.IDLOG
Comment faire ?
Merci par avance
blux
Messages postés
26819
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
29 avril 2025
3 335
6 mars 2007 à 14:45
6 mars 2007 à 14:45
Quand tu fais SELECT INTO, les champs de la table cible héritent des propriétés des champs de la table source...
Il est autrement plus intéressant de créer la table avec ses relations, puis de la remplir avec INSERT INTO..., quitte à la nettoyer si tu veux remettre d'autres données après (DELETE * FROM table)
Mais tu peux toujours créer des contraintes après ton SELECT INTO, c'est l'ordre CONSTRAINT (pour les relations) ou CREATE INDEX ... WITH PRIMARY pour la clé primaire
Il est autrement plus intéressant de créer la table avec ses relations, puis de la remplir avec INSERT INTO..., quitte à la nettoyer si tu veux remettre d'autres données après (DELETE * FROM table)
Mais tu peux toujours créer des contraintes après ton SELECT INTO, c'est l'ordre CONSTRAINT (pour les relations) ou CREATE INDEX ... WITH PRIMARY pour la clé primaire
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
6 mars 2007 à 15:01
6 mars 2007 à 15:01
Je comprend pas bien l'histoire de creer la table avec ses relations puis de la remplir, c'est à dire ?
En considérant le deuxième solution, que devient alors ma requete ?
SELECT LOGAPP.IDLOG, LOGAPP.DATELOG INTO [SESSION]
CREATE INDEX SESSION.IDSESSION WITH PRIMARY CONSTRAINT SSESION.IDSESSION=LOGAPP.IDLOG
FROM LOGAPP
GROUP BY LOGAPP.IDLOG, LOGAPP.DATELOG;
ça semble louche ? c'est bon comme ça ?...j'ose pas essayer
En considérant le deuxième solution, que devient alors ma requete ?
SELECT LOGAPP.IDLOG, LOGAPP.DATELOG INTO [SESSION]
CREATE INDEX SESSION.IDSESSION WITH PRIMARY CONSTRAINT SSESION.IDSESSION=LOGAPP.IDLOG
FROM LOGAPP
GROUP BY LOGAPP.IDLOG, LOGAPP.DATELOG;
ça semble louche ? c'est bon comme ça ?...j'ose pas essayer
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
blux
Messages postés
26819
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
29 avril 2025
3 335
6 mars 2007 à 15:40
6 mars 2007 à 15:40
Non, tu crées une table avec l'assistant ACCESS, et ensuite elle vit ce qu'elle doit vivre : tu la remplis ou tu la vides au gré de tes humeurs...
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
6 mars 2007 à 15:45
6 mars 2007 à 15:45
Ce n'est pas ce que je recherche, je souhaite la créer a partir du réultat d'une requete, Acces appelle cela une requete de création.
Donc comment je peux rédiger cette requete ?
Donc comment je peux rédiger cette requete ?
blux
Messages postés
26819
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
29 avril 2025
3 335
6 mars 2007 à 15:49
6 mars 2007 à 15:49
Vois mon message 3...
Tu créés une table avec des valeurs par défaut et pas de relations, ensuite tu créés les relations... mais attention aux contraintes d'intégrité...
Tu créés une table avec des valeurs par défaut et pas de relations, ensuite tu créés les relations... mais attention aux contraintes d'intégrité...
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
6 mars 2007 à 15:59
6 mars 2007 à 15:59
Je voudrais pouvoir faire tout cela en une seule requête (pour pouvoir faire un macro)...un requête qui fait
1. selection dans la table LOGAPP
2. création d'une nouvelle table SESSION qui contient les champs SESSION.IDSESSION=LOGAPP.IDLOG, SESSION.DATESESSION=LOGAPP.DATELOG,
NSESSION (AutoNumber)
3. définir IDSESSION comme primary key
4. définir la relation SESSION.IDSESSION=LOGAPP.IDLOG avec intégrité ref.
Je ne souhaite pas créee une table manuellement puis la remplir en suite puis definir la clé, pusi la relation. Je voudraais réaliser cela en une seule requête pour les futurs macros.
Comment rédiger ma requête ?
Merci pour votre compréhesion...
1. selection dans la table LOGAPP
2. création d'une nouvelle table SESSION qui contient les champs SESSION.IDSESSION=LOGAPP.IDLOG, SESSION.DATESESSION=LOGAPP.DATELOG,
NSESSION (AutoNumber)
3. définir IDSESSION comme primary key
4. définir la relation SESSION.IDSESSION=LOGAPP.IDLOG avec intégrité ref.
Je ne souhaite pas créee une table manuellement puis la remplir en suite puis definir la clé, pusi la relation. Je voudraais réaliser cela en une seule requête pour les futurs macros.
Comment rédiger ma requête ?
Merci pour votre compréhesion...
blux
Messages postés
26819
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
29 avril 2025
3 335
7 mars 2007 à 08:58
7 mars 2007 à 08:58
On ne peut pas créer une table en la remplissant et définir ses propriétés en même temps via des requêtes...
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
8 mars 2007 à 17:42
8 mars 2007 à 17:42
ok, je laisse tomber cette idée.
Question numéro 3:
Jai un champ TEMPSAPPEL dans la table TYPETEMPSAPPEL, ce champ est vide, puisque la table est vide. Je souhaite la remplir avec les résultats d'une requete.
En effet, j'ai une requete sur la table SESSION qui retire tous les NSESSION lorsque la description contient la chaine de charactère "temps d'appel : *s". L'étoile est l'info qui m'interrese, il s'agit du temps effectif en sec. Donc je souhaiterais récupere uniquement les valeurs de cette étoile ?
Par cette requete, j'obtiens donc une liste des champs NSESSION et DESCRIPTION. Je souhaite récupérer seulement le nombre entier du champs DESCRITPION (correspondant à *) et pas tout le champ pour le réinjecter dans la table vierge TYPETEMPSAPPEL.
Est ce clair ?
Comment faire ?
Merci d'avance encore
----------------------------------------------
J'ai trouvé des infos la dessus :
Le filtre et la fonction Mid, mais je ne sais pas comment utiliser ces trucs là.
Je continue ma recherche...help me please.
Merci
Question numéro 3:
Jai un champ TEMPSAPPEL dans la table TYPETEMPSAPPEL, ce champ est vide, puisque la table est vide. Je souhaite la remplir avec les résultats d'une requete.
En effet, j'ai une requete sur la table SESSION qui retire tous les NSESSION lorsque la description contient la chaine de charactère "temps d'appel : *s". L'étoile est l'info qui m'interrese, il s'agit du temps effectif en sec. Donc je souhaiterais récupere uniquement les valeurs de cette étoile ?
Par cette requete, j'obtiens donc une liste des champs NSESSION et DESCRIPTION. Je souhaite récupérer seulement le nombre entier du champs DESCRITPION (correspondant à *) et pas tout le champ pour le réinjecter dans la table vierge TYPETEMPSAPPEL.
Est ce clair ?
Comment faire ?
Merci d'avance encore
----------------------------------------------
J'ai trouvé des infos la dessus :
Le filtre et la fonction Mid, mais je ne sais pas comment utiliser ces trucs là.
Je continue ma recherche...help me please.
Merci
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
8 mars 2007 à 11:56
8 mars 2007 à 11:56
OK, je laisse tomber cette idée.
Question numéro 3:
Jai un champ TEMPSAPPEL dans la table TYPETEMPSAPPEL, ce champ est vide, puisque la table est vide. Je souhaite la remplir avec les résultats d'une requete.
En effet, j'ai une requete sur la table SESSION qui retire tous les NSESSION lorsque la description contient la chaine de charactère "temps d'appel : *s". L'étoile est l'info qui m'interrese, il s'agit du temps effectif en sec. Donc je souhaiterais récupere uniquement les valeurs de cette étoile ?
Par cette requete, j'obtiens donc une liste des champs NSESSION et DESCRIPTION. Je souhaite récupérer seulement le nombre entier du champs DESCRITPION (correspondant à *) et pas tout le champ pour le réinjecter dans la table vierge TYPETEMPSAPPEL.
Est ce clair ?
Comment faire ?
Merci d'avance encore
Question numéro 3:
Jai un champ TEMPSAPPEL dans la table TYPETEMPSAPPEL, ce champ est vide, puisque la table est vide. Je souhaite la remplir avec les résultats d'une requete.
En effet, j'ai une requete sur la table SESSION qui retire tous les NSESSION lorsque la description contient la chaine de charactère "temps d'appel : *s". L'étoile est l'info qui m'interrese, il s'agit du temps effectif en sec. Donc je souhaiterais récupere uniquement les valeurs de cette étoile ?
Par cette requete, j'obtiens donc une liste des champs NSESSION et DESCRIPTION. Je souhaite récupérer seulement le nombre entier du champs DESCRITPION (correspondant à *) et pas tout le champ pour le réinjecter dans la table vierge TYPETEMPSAPPEL.
Est ce clair ?
Comment faire ?
Merci d'avance encore
chabRRR
Messages postés
63
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
27 novembre 2018
5
8 mars 2007 à 16:21
8 mars 2007 à 16:21
J'ai trouvé des infos la dessus :
Le filtre et la fonction Mid, mais je ne sais pas comment utiliser ces trucs là.
Je continue ma recherche...help me please.
Merci
Le filtre et la fonction Mid, mais je ne sais pas comment utiliser ces trucs là.
Je continue ma recherche...help me please.
Merci
blux
Messages postés
26819
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
29 avril 2025
3 335
8 mars 2007 à 21:43
8 mars 2007 à 21:43
SELECT val(left(len(champ)-1)) FROM toto;On récupère la longueur de 'champ', on enlève 1 et on prend les caractères restants à partir de la gauche, en les transformant en numérique puisque 'champ' contient au départ une donnée de type 'chaîne'...