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 :

Autoriser les doublons sur un champ


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut Autoriser les doublons sur un champ
    Bonjour à tous,

    Je modifie actuellement une BD Access exploitée via un intranet (asp) et je suis confronté à un petit problème. Je veux fusionner les données de deux tables qui ont les mêmes champs et je recopie donc les données de l'une dans l'autre (jusque là tout va bien). J'ai ajouté un champ dans la table de destination, renseigné de telle sorte à ce qu'on puisse différencier les données en provenance de la table source. Le problème est que lors de la recopie, j'ai un bug d'insertion car les doublons sont interdits sur le champ "nom". D'où ma question : comment (via sql) modifier les propriétés d'un champ pour interdire les doublons.

    Un petite idée ?

    -M@rc0-
    -M@rc0-
    PS : pensez au tag Résolu

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 282
    Points
    34 282
    Par défaut
    Bonjour,
    des infos déjà sur les doublons : http://sql.developpez.com/doublons/

    concernant la modification des champs, voir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE ... ALTER COLUMN
    http://sql.developpez.com/sqlaz/fondements/
    sinon issue de la FAQ : http://access.developpez.com/faq/?pa...#RenomColonSQL
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Merci de répondre aussi vite jpcheck Mais... je viens de me rendre compte que je me suis trompé dans mon message : je ne veux pas interdire le doublons mais bien les autoriser. Ca change tout

    -M@rc0-
    -M@rc0-
    PS : pensez au tag Résolu

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 282
    Points
    34 282
    Par défaut
    Dans ce cas, si tu veux des doublons, tu dois éviter de les placer en clé primaire.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Pour être plus précis, le champ concerné n'est pas en clé primaire mais il s'agit d'un champ défini comme indexé sans possibilité de doublon.
    (Je prends la suite de la personne qui a créée cette BD...)
    Ce que je veux donc faire c'est, via un script modifier le champ pour qu'il autorise désormais les doublons (mais je ne connais pas la commande sql susceptible de le faire - qui plus est sur une mdb)...
    Tout coup de pouce sera le bienvenu

    -M@rc0-
    -M@rc0-
    PS : pensez au tag Résolu

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 282
    Points
    34 282
    Par défaut
    voir dans l'idée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE MaTable DROP PRIMARY KEY (MonChampa);
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Ce que tu me propose là est de supprimer le champ. J'en conclu qu'il n'y a pas de moyen de modifier le caractère unique d'un champ sans passer par un processus de recopie/suppression...
    Ce que j'aurai voulu doit plus ressembler à (mais ca n'existe visiblement pas)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE MaTable UPDATE MonChamp NOT UNIQUE
    Ca te parle plus ?
    -M@rc0-
    PS : pensez au tag Résolu

  8. #8
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 282
    Points
    34 282
    Par défaut
    je partirai pour ceci alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE MaTable DROP UNIQUE (MonChampa);
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut tant pis...
    Bon... merci encore pour ton investissement jpcheck mais ça ne marche pas. Je pense effectivement que cette instruction SQL doit marcher...sur un autre SGBD. Ah Access qu'est-ce que c'est bien
    Enfin...je pense que je vais créer un autre champ dans la table, avec un autre nom, tout recopier dedans et "dropper" celui qui me pose problème.

    -M@rc0-
    -M@rc0-
    PS : pensez au tag Résolu

  10. #10
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 282
    Points
    34 282
    Par défaut
    autre solution sinon, mais c'était pour pas sortir du SQL, c'est le faire par le code VBA.
    en ADO comme en DAO, c'est possible
    voir les cours
    http://access.developpez.com/cours/?page=courstuto#dao
    http://access.developpez.com/cours/?page=courstuto#ado
    au choix.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Eliminer les doublons sur 2 champs
    Par tibofo dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 03/10/2011, 19h05
  2. [AC-2007] Limiter les doublons sur un champ
    Par sameros dans le forum VBA Access
    Réponses: 13
    Dernier message: 05/09/2010, 19h48
  3. comment chercher les doublons sur deux champs (ou plus)
    Par alili mostafa dans le forum Bases de données
    Réponses: 4
    Dernier message: 31/05/2010, 19h09
  4. Eviter les doublons sur un champ SQL Serveur 2005
    Par crashyear dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 05/12/2006, 08h02
  5. [Access] supprimer les doublons sur deux champs
    Par nini94 dans le forum Langage SQL
    Réponses: 15
    Dernier message: 13/10/2006, 11h41

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