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 :

auto-incrément Mysql sur Access


Sujet :

Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut auto-incrément Mysql sur Access
    J'ai transféré ma bdd Access sur Mysql. Mais j'ai gardé l'interface Access sur les postes client. L'auto-incrément ne se fait plus dès que l'on ajoute une information dans le 1er champs comme avec Access en serveur. En fait il ne s'auto-incrémente que lorsque l'on passe à une autre ligne (ou fiche) suivante. Bon, c'est pas grave en soi, mais pour une utilistation par un néophyte c'est des problèmes à l'arrivée. Comment faire donc pour que les champs de référence s'incrémente dès que l'on met une information dans une nouvelle ligne. Qqu'un aurait-il un code VB à proposer pour le formulaire Access, ou en core une autre solution sur Mysql ?
    Merci de votre aide précieuse.

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 057
    Points : 24 659
    Points
    24 659
    Par défaut
    peut-être en faisant un insert SQL ou son équivalent ADO au préalable ?

    Bon c'est une bidouille que je te donne là ! mais cela semble logique pour contourner le problème.

    Pour une solution mysql voir le forum qui y est consacré.
    Pour une solution VB idem.

  3. #3
    Membre éprouvé Avatar de Ric500
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 965
    Points : 1 158
    Points
    1 158
    Par défaut auto incrément
    Bonjour,

    Il me semble, si je me souviens bien, que lors du portage sur mySQL, les auto-incréments sont convertis en longs: il faudrait modifier la structure du champ vers l'auto incrément sur mySQL.

    Résultat pas garanti, à mon âge alzheimer vous guête !!!

    Bon courage!

  4. #4
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut re- auto-incrément Mysql sur Access
    Sympas pour les réponses, mais je suis pas vraiment de la partie et les termes me sont inaccessibles (pour le moment) .... Bref je n'ai pas compris les réponses :

    ....les auto-incréments sont convertis en longs

    ....ou son équivalent ADO

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 69
    Points : 71
    Points
    71
    Par défaut
    Bonjour,

    j'ai effectivement le même problème... D'ailleurs le problème si on fait un insert SQL avant, c'est comment savoir quel enregistrement ouvrir ensuite...vu que je ne connais pas l'ID... et en multi-utilisateurs, je ne peux pas forcément prendre le dernier

    alors si qq'1 a une solution, ça m'intéresse !! je farfouille d'ailleurs sur le net et je repasserai si j'ai trouvé qq chose...

    EDIT
    => alors en fait j'ai trouvé une solution !! il faut mettre l'ID à valeur par défaut à 0 dans Access et j'ai recherché le dernier enregistrement (ce que je ne voulais pas faire mais bon)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim n as long
    n = Nz(DMax("ID", "Matable")

  6. #6
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 626
    Points : 726
    Points
    726
    Par défaut Explication
    Bonjour,

    Ce que Loufab veut dire c'est que laisse tomber l'auto-incrément et que tu passes au prochain numéro par le code avec connecteur ADO ou bien par une requête SQL du style docmd.runsql ..

    Quant à Steph9 il a trouvé comment obtenir le dernier numéro utilisé, après on fait plus 1.

    Petit inconvénient c'est les trous à combler.

    De toutes façon l'auto-incrément est, pour moi, un piège, sert à rien.

    a+

  7. #7
    Modérateur

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    naphta, l'autoincrément est destiné à te fournir une clef unique facilement PAS à s'assurer de la continuité de la séquence (d'où les trous). C'est tellement vrai que quand tu fais de la réplication Access les transforme en Random.

    Personnellement je l'utilise intensément, notement dans une application qui fait de l'acquisition de données à partir de capteurs.

    Si tu as besoin d'une série sans trou, par exemple pour numéro de facture, il faut le gérer à la main.

    A+

  8. #8
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 626
    Points : 726
    Points
    726
    Par défaut Les trous
    Bonjour,
    Je ne sais pas où on fait citer ! pour marot_r

    J'ai réalisé il y a un moment un chrono pour N° de Facture avec "comblage" des trous automatique, ça va vite et c'est en place depuis 4 ans sans soucis.

    Les gros inconvénients des champs type auto-incrément se situe au niveau d'une portabilité restreinte et de gros soucis lors de migration des tables mére-fille quand ce sont des clés primaires.

    Par contre, je retire sert à rien, il y a des contextes où cela devrait-être très utile. (devais être énervé, désolé)

    a+

  9. #9
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    salut à tous,

    maxireus>
    regarde si @@IDENTITY peut t'apporter une réponse et voici un lien traitant le sujet de récupérer l'auto-incrément ici

    En fait il ne s'auto-incrémente que lorsque l'on passe à une autre ligne (ou fiche) suivante. Bon, c'est pas grave en soi, ...
    ben moi, je dis que si, ca peut être "grave"... il m'arrive de créer un enregistrement parent au moment de la saisie d'un enregitrements enfant. garantir à l'enfant le bon parent dans une situation de multi utilisateur c'est crutial. j'ai le souvenir d'avoir lu une discution là dessus n'est ce pas marot_r ici

    si tu ne peux qu'enregistrer pour obtenir l'auto-incrément, enregistre...
    et recherche (éventuellement dans les liens) la meilleur facon de garantir la récupération de cet enregistrement.

Discussions similaires

  1. création clé primaire auto incrémentable SQL ACCESS ?
    Par colorid dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 23/11/2007, 14h25
  2. Réponses: 8
    Dernier message: 08/06/2006, 11h20
  3. [Mysql]Auto_incrément et réactualisation de l'auto incrément
    Par kei-kun41 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 21/03/2006, 11h31
  4. auto-incrément Mysql sur Access
    Par maxireus dans le forum Access
    Réponses: 4
    Dernier message: 07/03/2006, 00h35
  5. auto-incrément Mysql sur Access
    Par maxireus dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 06/03/2006, 21h20

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