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

PHP & Base de données Discussion :

Auto-incrémentation id table


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 15
    Points : 6
    Points
    6
    Par défaut Auto-incrémentation id table
    Bonsoir à tous,

    Je me demandais comment était-il possible d'auto-incrémenter mon champ "n_coureur" de 5 en 5, via l'insertion de données par formulaire, où les champs nécessaires seront demandés à l'utilisateur, mais pas l'id.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $nom = $_POST['i_nom'];
    $prenom = $_POST['i_prenom'];
     
     
    $req = "INSERT INTO TableBidon (n_coureur,nom,prenom,code_tdf) VALUES ('5000','".$nom."','".$prenom."','ESP')";
    $cur = PreparerRequete($conn,$req);
    echo "<br>identifiant de curseur : $cur<br>";
    $res = ExecuterRequete($cur);
    if (res)
    {
    echo "Mise à jour réussie";
    }
    En effet le champ "n_coureur" doit être auto-incrémenté de 5 en 5, mais après des recherches infructueuses je suis un peu perdu. Quelqu'un pourrait-il m'aider ? Je connais les séquences sur Oracle qui permette ce genre de choses, mais je débute en php et je ne vois pas comment je pourrais utiliser ici une séquence...

    J'espère avoir expliqué mon problème de façon claire, demandez moi sinon.

    Merci pour votre aide, bonne soirée

  2. #2
    Débutant
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 125
    Points : 704
    Points
    704
    Par défaut
    Fais un SELECT et recupére ton champ à incrémenter.
    Puis tu fais ta variable recupéré + 5
    Évènements dans le 06?
    www.sortir06.com

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Points : 350
    Points
    350
    Par défaut
    Tu crées une séquence qui évolue de 5 en 5 avec un trigger sur ta table. Après cela tu n'as plus besoin d'insérer de données dans ton id.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE SEQUENCE TableBidon_SEQ START WITH 1 INCREMENT BY 5;
    CREATE TRIGGER TableBidon_TRG ON TableBidon
    BEFORE INSERT ON TableBidon
    FOR EACH ROW 
    BEGIN
      SELECT TableBidon_SEQ.NEXTVAL INTO :NEW.a_coureur FROM DUAL;
    END;

Discussions similaires

  1. [WD14] Auto-incrémentation sur table mémoire
    Par BENKOUIDER dans le forum WinDev
    Réponses: 1
    Dernier message: 02/08/2009, 13h17
  2. Comment obtenir un champs auto incrémenté dans une table DBase IV ?
    Par souminet dans le forum Bases de données
    Réponses: 1
    Dernier message: 11/12/2007, 13h55
  3. Réponses: 5
    Dernier message: 09/03/2007, 19h39
  4. [TABLE] auto-incrément corrompu
    Par metheorn dans le forum Access
    Réponses: 2
    Dernier message: 29/05/2006, 12h10
  5. Compactage de tables Paradox avec auto-incrément
    Par Unusual_FL dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/09/2004, 15h05

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