[ACCESS] Requête ajout
Résolu
Alain V.
Messages postés
370
Date d'inscription
Statut
Membre
Dernière intervention
-
Alain1968 -
Alain1968 -
Bonsoir
Je souhaite recopier une colonne (800 lignes) de "table source" vers "table cible" au moyen d'une requête ajout.
A chaque tentatives j'ai le message "vous allez enregistrer 0 lignes".
Je me doute bien que je ne dois pas mettre les bons champs aux bons endroits:
Merci d'avance pour un petit coup de pouce, un tuto ou une instruction sql
Je souhaite recopier une colonne (800 lignes) de "table source" vers "table cible" au moyen d'une requête ajout.
A chaque tentatives j'ai le message "vous allez enregistrer 0 lignes".
Je me doute bien que je ne dois pas mettre les bons champs aux bons endroits:
CHAMP: le champ source TABLE : la table source TRI : croissant AJOUTE A : [la table cible].[le champ cible] CRITERE : Est Null
Merci d'avance pour un petit coup de pouce, un tuto ou une instruction sql
A voir également:
- Requête ajout access
- Ajout snap sans rien d'écrit - Forum Snapchat
- Acer quick access - Forum Logiciels
- Ajout rapide snap - Forum Snapchat
- Access runtime ✓ - Forum Access
- Demande d'amis SNAPCHAT - Forum Snapchat
7 réponses
Je rencontre le même problème,
mais même sans règle de validationd dans la table cible, j'obtiens toujours 0 ajout.
J'ai bien vérifié les types et tailles des champs source et cible.
Y a-t-il un index à mettre qlq part ?
help
mais même sans règle de validationd dans la table cible, j'obtiens toujours 0 ajout.
J'ai bien vérifié les types et tailles des champs source et cible.
Y a-t-il un index à mettre qlq part ?
help
Bonjour,
Comme ça c'est difficile à dire.
Tu devrais joindre le code SQL de ta requête.
Cependant, un truc retient mon attention :
“CRITERE : Est Null”
Avec ça, tu demandes à la requête de trouver les enregistrements “vides”.
Si la table n'en contient pas, la requête en trouve 0.
Comme ça c'est difficile à dire.
Tu devrais joindre le code SQL de ta requête.
Cependant, un truc retient mon attention :
“CRITERE : Est Null”
Avec ça, tu demandes à la requête de trouver les enregistrements “vides”.
Si la table n'en contient pas, la requête en trouve 0.
Bonjour Gihef et merci d'essayer de m'aider.
J'ai supprimé "Est Null" mais le résultat est toujours négatif.
Voici le code SQL qu'Access m'affiche :
Pour info :
champ-source est : numérotation automatique, indexé, sans doublon
champ-cible est : numérique, Entier long, non indexé
J'ai supprimé "Est Null" mais le résultat est toujours négatif.
Voici le code SQL qu'Access m'affiche :
INSERT INTO [table-cible] (champ-cible) SELECT table-source.[champ-source] FROM table-source INNER JOIN [table-cible] ON table-source.[champ-source] = [table-cible].champ-cible ORDER BY table-source.[champ-source];
Pour info :
champ-source est : numérotation automatique, indexé, sans doublon
champ-cible est : numérique, Entier long, non indexé
Problème résolu.
Parmi les champs de table-cible, un champ possédait une règle de validation incompatible avec l'ajout de nouveaux enregistrements.
Parmi les champs de table-cible, un champ possédait une règle de validation incompatible avec l'ajout de nouveaux enregistrements.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
je me suis lancé dans l'élaboration d'une base access, mais j'ai un probleme je ne sais pas comment faire un nouvelle enregistrement.
c'est une base qui gère des points de controle avec plusieurs variantes à une date et positions précise, j'ai d'abord fait une requete de mise à jour mais ça ne marche pas!, si quelqu'un pouvait m'aider ce serai sympa
ps: je suis un novice dans ce domaine
yann.
je me suis lancé dans l'élaboration d'une base access, mais j'ai un probleme je ne sais pas comment faire un nouvelle enregistrement.
c'est une base qui gère des points de controle avec plusieurs variantes à une date et positions précise, j'ai d'abord fait une requete de mise à jour mais ça ne marche pas!, si quelqu'un pouvait m'aider ce serai sympa
ps: je suis un novice dans ce domaine
yann.
bonjour,
je dispose aujourd'hui d'une multitude de fichier excel en guise de base de données, je souhaite ne faire qu'un seul fichier access mais je ne parviens pas à rajouter dans ma table les données d'un fichier excel, mes colonnes sont pourtant identiques.....
le PC me dit qu'il y a "violation de clé" alors j'ai enlevé toute clé primaire, ça ne fonctionne toujours pas...
j'ai aussi essayé en créant 1 2nde table à partir de mon fichier excel, du coup ce sont les 2 tables que je ne parviens pas à rassembler
je tourne en rond, 1 coup de pouce ça serait génial !!
merci
je dispose aujourd'hui d'une multitude de fichier excel en guise de base de données, je souhaite ne faire qu'un seul fichier access mais je ne parviens pas à rajouter dans ma table les données d'un fichier excel, mes colonnes sont pourtant identiques.....
le PC me dit qu'il y a "violation de clé" alors j'ai enlevé toute clé primaire, ça ne fonctionne toujours pas...
j'ai aussi essayé en créant 1 2nde table à partir de mon fichier excel, du coup ce sont les 2 tables que je ne parviens pas à rassembler
je tourne en rond, 1 coup de pouce ça serait génial !!
merci
Moi je suis debutant sous access et je lutte pour excuter une operation:
J'ai deux table l'une a n champs l'autre a n champs identique + 4.
je souhaiterai effectuer une mise a jour automatique des n champs pour un ID donné et lorsqu'il n'y a pas de matching crée l'enregistrement.
Le truc parait simple mais guess what: j'y arrive pas
Merci par avance de votre patience
Daft
J'ai deux table l'une a n champs l'autre a n champs identique + 4.
je souhaiterai effectuer une mise a jour automatique des n champs pour un ID donné et lorsqu'il n'y a pas de matching crée l'enregistrement.
Le truc parait simple mais guess what: j'y arrive pas
Merci par avance de votre patience
Daft
Avec un peu de retard,tu dois utilisé une requete de non concordance
par exemple
INSERT INTO Table_a_mettre_a_jour ( code )
SELECT T1.code, T1.*
FROM Table_de_reference AS T1 LEFT JOIN Table_a_mettre_a_jour AS T2 ON T1.code = T2.code
WHERE (((T1.code)<>0) AND ((T2.code) Is Null));
dans la table T2 sont ajouté les enregistrements de T1 si la champ code n'existe pas en T2
par exemple
INSERT INTO Table_a_mettre_a_jour ( code )
SELECT T1.code, T1.*
FROM Table_de_reference AS T1 LEFT JOIN Table_a_mettre_a_jour AS T2 ON T1.code = T2.code
WHERE (((T1.code)<>0) AND ((T2.code) Is Null));
dans la table T2 sont ajouté les enregistrements de T1 si la champ code n'existe pas en T2
Perso, vous vous compliquez bcp trop la vie en faisant une instruction SQL ! Pour une fois, l'utilisation d'une macro est plus appropriée je trouve !
Vous avez vos deux tables, une source et une cible. Il faut juste que vous ayez les mêmes colonnes dans les deux tables.
Ensuite, grâce à la macro, vous n'avez qu'à spécifier ce que vous voulez copier et le tour est joué.
L'avantage des requêtes c'est qu'elles sont écrites en SQL et que, même s'il y existe quelques variantes, ce langage est indépendant des plateformes.