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

JDBC Java Discussion :

Création d'index dans une base de données obligatoire ?


Sujet :

JDBC Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    465
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 465
    Points : 241
    Points
    241
    Par défaut Création d'index dans une base de données obligatoire ?
    Bonjour,
    J'ai une question qui me turlupine....

    J'ai crée une base de données qui, comporte différents champs, notement un champ Index ( ID).
    Cette base de données, je suis entrain de la programmer sous netbeans..
    Pour alimenter cette base de donnée par programmation, j'effectue un ExecuteUpadte suivi d'une instruction SQL..

    Dans cette ligne d'instruction SQL, apparait grosso modo : insert into (" XXXXX ") values ( 'ID', 'XX','XX'); etc..

    Or, pour que les éléments s'insèrent à la suite des enregistrements , je suis obligé de trouver le dernier ID ( index ) existant et l'incrémenter à chaque fois de 1.

    D'où ma question :
    Suis je finalement obligé de créer le champs ID ( index ) dans une base de données ?
    Ou, est ce que le fait d'utiliser un ExecuteUpdate, le système se charge lui - même de cette gestion d'indexation.?
    Et cette gestion d'indexation automatique ( si c'est le cas..) me permetra t'elle par la suite de récupérer l'ID pour des critères d'extraction par exemple ?

    Merci d'avance
    a+

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Points : 386
    Points
    386
    Par défaut
    Je pense que tu te mélanges les pinceaux.
    Ton ID n'est pas un index mais sans doute une clé d'enregistrement généralement à numérotation automatique, à ne pas confondre avec un index qui sert à accélérer, si bien choisi le temps d'exécution d'une requête.
    Dans ton cas je pense que c'est une clé.
    Or, pour que les éléments s'insèrent à la suite des enregistrements , je suis obligé de trouver le dernier ID ( index ) existant et l'incrémenter à chaque fois de 1.
    Il te faut vérifier dans les caractéristiques de ta table qu'elle est positionnée à auto-incrément (si ce n'est pas le cas, faire la modif) et alors tu pourras la strapper de ta requête d'insertion puisque elle sera incrémentée automatiquement sans doublon.
    Maintenant si elle ne te sert à rien ...

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    465
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 465
    Points : 241
    Points
    241
    Par défaut
    Le problème c'est que je n'ai pas cette option d'auto-incrémentation sous netbeans..
    J'ai crée la base de données en mode console sous linux ... Puis les différentes tables sous netbeans. Lors de ces créations de tables..il n'y a pas cet option d'auto-incrémentation .Mais uniquement la possibilité de créer un champ que j'ai nommé ID en bigInt, qui me permettra par la suite d'effectuer des recherches indexés..

    Maintenant possible qu'il ne me soit pas nécessaire de créer ce champ et laisser la base s'auto-incrémenter d'elle meme.. Je vais refaire un essai d'ici demain..

    Merci pour ta réponse, et désolé de la réponse tardive..mais habituellement je coche la notification de la réponse...N'ayant rien de neuf dans ma bal..je pensait n'avoir obtenu de réponse et c'est par hasard en effectuant à nouveau une recherche sur le site que j'ai vu que ça a été répondu...Je n'ai pas dû cocher l'option de notification à l'époque..
    En tous les cas encore merci pour le reply...toute nouvelle suggestion est la bienvenue..

    a+

  4. #4
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Citation Envoyé par Telemak Voir le message
    Le problème c'est que je n'ai pas cette option d'auto-incrémentation sous netbeans..
    Il est "normal" que l'option d'incrémentation ne te doit pas proposée directement par NetBeans. Celle-ci n'est pas générique, et n'est pas gérée de la même manière par tous les SGBD (même si presque tous offrent d'une manière ou d'une autre la fonctionnalité).

    Par exemple:
    - sous PostgreSQL ou Oracle, pour avoir un ID qui s'auto-incrémente, il faut passer par une séquence.
    - sous MySQL, l'auto-increment est une option qui peut être ajoutée sur les champs de type entiers.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

Discussions similaires

  1. Création d'index dans une base ACCESS
    Par faraudch dans le forum Macro
    Réponses: 2
    Dernier message: 14/02/2011, 14h35
  2. [MySQL] Création d'un document Word dans une base de données
    Par afifi dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 05/04/2009, 08h50
  3. Réponses: 1
    Dernier message: 10/10/2007, 10h42
  4. Tester l'existence d'un index dans une base de données
    Par QuickSave dans le forum Bases de données
    Réponses: 4
    Dernier message: 31/01/2007, 13h41
  5. création d'une table dans une base de donnée accèss
    Par zidenne dans le forum Bases de données
    Réponses: 1
    Dernier message: 25/10/2005, 10h54

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