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

Access Discussion :

Utiliser un champ calculé dans une table comme clé primaire [AC-2010]


Sujet :

Access

  1. #1
    Membre averti Avatar de jawed
    Homme Profil pro
    Comptable
    Inscrit en
    Mars 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Algérie

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 499
    Points : 304
    Points
    304
    Par défaut Utiliser un champ calculé dans une table comme clé primaire
    Bonjour le forum
    j'ai un champ calculé nommé ETAT dans ma table BIENS dont la formule est comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [cité] & [Bloc] & [Type] & [Superficie] & [Num] & [Dossier]
    j'ai voulu l'utilisé comme clé primaire afin de la joindre a une autre table mais le bouton est désactivé

    afin de remédier j'ai crue en insérant la formule suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RechDom("[Etat]";"[Biens]";"[Etat] = Form.[Etat] ") Est Pas Null
    pour annuler tous double saisie, il m'affiche le message d'erreur suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    La valeur ne respecte pas la règle de validation du champ ou de l'enregistrement
    alors pour résumer est-il possible d'utilisé un champ calculé comme CLÉ PRIMAIRE ?

    Cordialement

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Oui les champs calculés sont un peu surprenant parfois.

    Pour faire ce dont tu as besoin il te suffit de sélectionner les différents champs et d'appuyer sur l'icône Clef.
    Access va enregistrer une clef primaire composée.

    Si un des éléments peut être null alors il faut définir un index unique composés (l'icône avec l'éclair te donne accès la gestion des indexes.).

    Personnellement quand j'ai ce cas, je défini presque toujours une clef primaire autonum et un index unique composé.
    Car une fois ou deux où j'ai eu besoin de faire la relation sur la clef autonum au lieu d'utiliser mon index unique.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre averti Avatar de jawed
    Homme Profil pro
    Comptable
    Inscrit en
    Mars 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Algérie

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 499
    Points : 304
    Points
    304
    Par défaut
    Bonjour marot_r et merci pour votre retour, est il possible de m'expliquer ceci:

    1- c'est quoi ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    une clé primaire composée
    2-
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    access peut enregistrer une clef primaire composée
    3-
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    définir un index unique composés
    Merci d'avance pour votre aide
    A bientôt
    Cordialement

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Une clef primaire composée est une clef primaire qui comporte plusieurs champs.

    Dans ton cas :

    • [cité]
    • [Bloc]
    • [Type]
    • [Superficie]
    • [Num]
    • [Dossier]


    Si un des champs peut être null, alors on ne peut pas l'utiliser comme composant de la clef primaire.
    Il faut utiliser un index unique composé.

    Pour accéder aux indexes, il faut appuyer sur l'icône avec l'éclair en mode création de table.
    Dans la 1ière colonne on choisi un nom pour l'index (ex : Unicite) et dans la 2ième colonne, les champs qui le compose.
    Ensuite on coche "Unique" en bas de la fenêtre.

    Attention si un des éléments est null Access ne voit plus l'unicité ... c'est pas cool mais je n'ai pas trouvé de parade à part vérifier par code que l'enregistrement est bien unique.

    Donc si tu as un truc du genre V1, Null et bien tu peux avoir autant de V1, Null que tu en rentres et Access ne dira rien :-(.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre averti Avatar de jawed
    Homme Profil pro
    Comptable
    Inscrit en
    Mars 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Algérie

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 499
    Points : 304
    Points
    304
    Par défaut
    Bonjour marot_r
    merci beaucoup pour vos précieuses explication, je vais faire d'autre recherche sur mes livres et internet avant de me lancer sur cette application
    Cordialement

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

Discussions similaires

  1. Création d'un champs calcul dans une table
    Par arnold95 dans le forum Modélisation
    Réponses: 4
    Dernier message: 16/09/2009, 20h40
  2. champs calculé dans une table
    Par tomas dans le forum Modélisation
    Réponses: 1
    Dernier message: 17/09/2007, 11h18
  3. Champs calculés dans une table
    Par froutloops62 dans le forum Access
    Réponses: 7
    Dernier message: 22/05/2007, 23h50
  4. [Requête/SQL]ajouter un champ calculé dans une table
    Par zougna dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 17/04/2007, 19h09
  5. Créer un champ calculé dans une table
    Par tigevellou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 21/04/2006, 15h08

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