IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

numéroté chaque ligne d une requete en commançant par1


Sujet :

Requêtes et SQL.

  1. #1
    Membre confirmé
    Homme Profil pro
    PENSION
    Inscrit en
    Septembre 2023
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Belgique

    Informations professionnelles :
    Activité : PENSION

    Informations forums :
    Inscription : Septembre 2023
    Messages : 76
    Par défaut numéroté chaque ligne d une requete en commançant par1
    Bonjour , pour diverses raisons, je ne veux pas utiliser une clé primaire avec numéro automatique. je souhaite simplement ajouter une colonne à ma requête et que chaque enregistrement a un numéro +1.J ai cherché sur ce site , numéro incrémenté mais suis nul en VBA et SQL. j ai lu une fonction ligne mais sais pas trop comment m y prendre. Merci d avance

  2. #2
    Expert confirmé Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 294
    Par défaut
    Salut,
    Essayez ceci, à adapter à votre IHM biensûr.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NumLigne: CpteDom("[NomDuChampNumérique]";"[NomDeLaTable]";"[NomDuChampNumérique]<=" & [NomDuChampNumérique])

  3. #3
    Membre confirmé
    Homme Profil pro
    PENSION
    Inscrit en
    Septembre 2023
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Belgique

    Informations professionnelles :
    Activité : PENSION

    Informations forums :
    Inscription : Septembre 2023
    Messages : 76
    Par défaut hic
    D abord un grand merci car votre formule fonctionne très bien. Malheureusement pas ce que je souhaite , je cherche mais voici mon problème : j ai 2 tables avec chacune une clé primaire num automatique.J ai des requêtes ajouts entre les 2 et il y a conflit avec les num automatiques. Pour faire simple , j ai besoin donc de 2 clefs primaires mais qui ne fonctionnent pas avec les mêmes numéros. La première, par exemple de 1 à .... et la 2 emme à partir de 50000, avec de cette façon pas de doublons possibles. Merci pour votre aide et bien cordialement . La table 1 ING , j ai créé ING Id avec num auto . OK , J ai créé sur la 2 eme table BNP ID avec num automatique. OK ; Avec mes requetes ajouts , ça fonctionne fort bien mais , j ai des doublons. avec mes requêtes

  4. #4
    Expert confirmé Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 294
    Par défaut
    re,
    Dans ce billet Tee_grandbois, que je salue, vous demande dans son Post#2 de fournir le code SQL ou l'affichage du code SQL de votre requête ajout (INSERT).

    En l'état on ne sait toujours pas quels sont les champs pris en compte dans vos requêtes INSERT de la T_ING vers la T_BNP et vice versa

    Dans ce même billet, je ne vois pas l'intérêt de mettre en relation la T_ING avec la T_BNP. Sauf erreur, T_ING ne dépend pas de T_BNP et vice versa.

    Quelques points à savoir
    - éviter un même nom de champ dans plusieurs tables (polysème en analyse conceptuelle)
    - nom de champ court et concis, sans caractères accentués ni cédille, sans caractères spéciaux sauf tiret du 6 et du 8, sans espace
    - une clé primaire est obligatoire dans chacune des tables, sauf quelques cas particuliers. Et on lui affecte le type NuméroAuto
    Images attachées Images attachées  

  5. #5
    Membre confirmé
    Homme Profil pro
    PENSION
    Inscrit en
    Septembre 2023
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Belgique

    Informations professionnelles :
    Activité : PENSION

    Informations forums :
    Inscription : Septembre 2023
    Messages : 76
    Par défaut
    Bonsoir Monsieur , merci encore;
    Explications : Jc est un petit programme pour encoder toutes mes depenses et rentrées sur 2 comptes en banque , 1 table pour ING et une table pour BNP.
    Tout se passe bien lorsque j encode sur chaque banque , leurs propres données. Le gros hic est que parfois j envoie de l argent de ING vers BNP ou de BNP vers ING.
    J ai peut-être mal conçu mon programme . J ai réussi via requête union lorsque je tranfère de l argant de l un vers l autre à avoir les bons montants , en plus d un côté et en moins de l autre. Tout se complique lorsque je souhaite automatiquement copier une ligne indiquant mon transfert d argent vers l autre compte. je souhaite faire une sorte de copier coller de ma ligne encodée sur l autre compte.J ai donc imaginé une requête ajout , en la paramétrant sur une première requête. donc cette première requête contient les lignes à envoyer sur l autre table. Mais voilà , avec la numérotation automatique , sans doublons , ça ne fonctionne pas. J ai alors changé sur ING la clé primaire en créant ID ING et ID BNP. Et ça fonctionne , je reçois bien les lignes encodées, sauf que ma requête automatique s exécute plusieurs fois . Voilà pour l explication ;Photos en annexe , compte ING , 2 opérations dont 1 transfert vers BNP de 1000€. Sur le compte BNP , le total est juste mais sur les lignes encodées automatiquement, j ai 3 fois la même, ,avec cette requête ajout qui s enclenche chaque fois que j ouvre le compte BNP.Idem pour l inverse BNP vers ING. Merci encore car je suis assez novice en access.Photos de la table ING , photo de la requête préparation pour transfert ligne ING vers BNP et enfin reuqête ajout de ING vers BNPNom : 20250612_084548[1].jpg
Affichages : 79
Taille : 1,14 MoNom : 20250612_084527[1].jpg
Affichages : 80
Taille : 1,18 MoNom : 20250612_090511[1].jpg
Affichages : 81
Taille : 1,41 MoNom : 20250612_085930[1].jpg
Affichages : 80
Taille : 1,19 MoNom : 20250612_090053[2].jpg
Affichages : 79
Taille : 1,61 Mo

  6. #6
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 976
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 976
    Par défaut
    bonjour,
    j'espérais la requête en mode "Vue SQL", tant pis je m'en passerai...

    D'après ce que je vois le problème est clair: on ne doit pas mettre de champ numéro auto dans une requête d'insertion.
    Car, comme son nom l'indique, un numéro auto est généré automatiquement par le système donc pas besoin de vouloir le gérer soi-même.
    Si on souhaite mémoriser le numéro auto de la table d'origine (pour contrôle d'intégrité ou recherche) on l'insère dans un autre champ mais de type numérique entier long et SURTOUT PAS dans le champ numéro auto de la table de destination.

    Cela dit, une seule table aurait suffit si chaque banque est identifiable ...

  7. #7
    Membre confirmé
    Homme Profil pro
    PENSION
    Inscrit en
    Septembre 2023
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Belgique

    Informations professionnelles :
    Activité : PENSION

    Informations forums :
    Inscription : Septembre 2023
    Messages : 76
    Par défaut 2 tables , 2 clefs
    Bonsoir Monsieur Tee_grandbois, d abord grand merci pour vos précieux conseils. Je ne suis absolument pas informaticien et J ai appris seul Access en lisant 1 livre et en cherchant sur le web des solutions et aussi et surtout grâce à votre équipe , pour de l aide . Je ne voulais plus vous importuner mais je me permets enfin d insérer 3 photos; De la table T_ING Principal , de la requête de préparation avant requête ajout et requête ajout. En cherchant, j ai compris que je devais d abord changer mes clés primaires et j ai créé un ID ING et un ID BNP mais toujours avec une numérotation automatique. Et miracle le transfert s effectue; MAIS , gros soucis avec mes requêtes ajouts qui ne respectent plus que les doublons !!! . Idée suivante a été de chercher un moyen de numéroter chaque ligne de ma requête avant ajout.J’en suis là , j’essaie Row Number , en sql , mais sans succès.Imaginons que j y arrive , et alors comment empêcher les doublons ! Je m’étais permis lors de vos aides en 2024 , de vous inviter en Belgique mais vous habitez , sans connaitre votre adresse, dans le sud. N’empêche que mon invitation tient toujours ou un autre service. Entretemps, j ai reçu une formule qui permet de numéroter les lignes de mes requêtes par votre ami et collègue Hypérion 13 , (également très gentil) mais cela ne me satisfait pas. Voilà , et si je dois recommencer avec une table principale, une seule clé primaire , encodage de toutes les lignes à la suite les unes des autres , puis requêtes , je le ferai.Bonne soirée et ENORME merci . Si il y a ,une solution pour mon souci actuel, j en serai ravi . Car tout fonctionne parfaitement sauf ce fameux transfert. Bien amicalement Yves Sorry le site serait en maintenance et imossible de joindre mes 3 photos. je le referai ce soir plus sql de la requête ajout
    Images attachées Images attachées     

  8. #8
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 976
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 976
    Par défaut
    je n'ai nullement envie de modifier un SQL à partir d'une photo, c'est pourtant à la portée de n'importe qui de copier du SQL et de le coller dans un message (entre les balises de code, icône #)
    je le redis: il ne faut pas insérer ING dans BNP, il faut laisser Access incrémenter automatiquement BNP

  9. #9
    Membre confirmé
    Homme Profil pro
    PENSION
    Inscrit en
    Septembre 2023
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Belgique

    Informations professionnelles :
    Activité : PENSION

    Informations forums :
    Inscription : Septembre 2023
    Messages : 76
    Par défaut
    Bonjour Monsieur Tee-Grandbois , Vous avez entièrement raison. mal compris : voici enfin copie en sql de la fameuse requête ajout :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO [T_BNP PRINCIPAL] ( DEPENSE, NOM, TYPE, [Date], MONTANT, BNP, [TABLE GENERALE] )
    SELECT [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].DEPENSE, [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].NOM, [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].TYPE, [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].Date, [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].MONTANT, [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].ING, [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1].[TABLE GENERALE]
    FROM [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2] AS [REQ ING VERS BNP POUR REQ AJOUT  DU MOIS 2_1];

    Néanmoins sauf si c est simple , ne vous fatiguez pas. je vais recommencer ce projet avec une seule table principale et une seule clé primaire.Je teins , une fois de plus , à vous remercier pour tout, vis à vis d un novice . Surtout portez vous bien et bien amicalement. Yves

Discussions similaires

  1. Réponses: 3
    Dernier message: 15/06/2007, 23h50
  2. [Access] Calcule par ligne dans une requête
    Par Belze dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/02/2006, 10h09
  3. Réponses: 1
    Dernier message: 29/11/2005, 01h37
  4. récupérer chaque ligne d'une requête ?
    Par ctobini dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 10/11/2005, 10h15
  5. Afficher le numéro de ligne dans une requete SELECT
    Par tilb dans le forum Langage SQL
    Réponses: 4
    Dernier message: 01/09/2004, 11h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo