[ACCESS] Requête ajout

Résolu/Fermé
Alain V. Messages postés 370 Date d'inscription dimanche 28 mars 2004 Statut Membre Dernière intervention 16 septembre 2016 - 6 nov. 2005 à 01:07
 Alain1968 - 12 janv. 2009 à 21:34
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:
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

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
2
jeate Messages postés 15 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 6 mai 2006 3
6 mai 2006 à 08:08
Non, à ma connaissance, il n'est pas nécessaire de mettre un index.

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é.
0
Alain V. Messages postés 370 Date d'inscription dimanche 28 mars 2004 Statut Membre Dernière intervention 16 septembre 2016 13 > jeate Messages postés 15 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 6 mai 2006
27 mai 2006 à 00:05
L'inconvénient majeur des macros c'est qu'elles sont spécifiques à une version de MSAccess.
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.
0
Gihef Messages postés 5150 Date d'inscription mercredi 20 juillet 2005 Statut Contributeur Dernière intervention 20 février 2023 2 775
6 nov. 2005 à 03:40
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.
 
0
Alain V. Messages postés 370 Date d'inscription dimanche 28 mars 2004 Statut Membre Dernière intervention 16 septembre 2016 13
6 nov. 2005 à 10:36
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 :
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é
0
Alain V. Messages postés 370 Date d'inscription dimanche 28 mars 2004 Statut Membre Dernière intervention 16 septembre 2016 13
6 nov. 2005 à 12:45
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.
0
jeate Messages postés 15 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 6 mai 2006 3
7 févr. 2006 à 13:02
OK...

0

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.
0
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
0
Bjr,

J,ai un pb similiaire au votre.
j,ai + fichier excel que j,ai relie a ma base acess . Je voudrai les relier en un seul mais je n,arrive pas.
Ma requete Ajout me retourne un message d,erreurs.
Avez vous svp une solution?
merci
0
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
0
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
0