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

Ruby on Rails Discussion :

Index et performance


Sujet :

Ruby on Rails

  1. #1
    Membre actif Avatar de rivsc
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 213
    Points : 275
    Points
    275
    Par défaut Index et performance
    Bonjour,

    je souhaiterai savoir si rails ajoute automatiquement un index sur la clé primaire, je ne crois pas : doc rails

    http://api.rubyonrails.org/classes/A...s.html#M001901

    create_table(:suppliers, :options => 'ENGINE=InnoDB DEFAULT CHARSET=utf8')

    generates:

    CREATE TABLE suppliers (
    id int(11) DEFAULT NULL auto_increment PRIMARY KEY
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8
    Pour les clés étrangères il faut ajouter les index à la main dans les migrations !?

    Vous êtes vous déjà préoccuppé de cela ?

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    510
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 510
    Points : 652
    Points
    652
    Par défaut
    je souhaiterai savoir si rails ajoute automatiquement un index sur la clé primaire
    Avec Rails 2.2.2, Mysql5.1, une base Myisam la réponse est Oui
    (suffit de regarder)

    Pour les clés étrangères il faut ajouter les index à la main dans les migrations !?
    Tu peux aussi installer un plugin qui le fait et qui te rajoute les foreign_key aussi...etc

  3. #3
    Membre actif Avatar de rivsc
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 213
    Points : 275
    Points
    275
    Par défaut
    Hum ça m'embete un peu d'utiliser un plugin pour ça.
    Sinon je tourne avec Postgresql (8.3) et j'ai lu dans la doc que les clés primaires sont forcément des index. Et puis pour les clés étrangères, maintenant je les ajoute à la main.

  4. #4
    Membre actif
    Avatar de Fildz
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 161
    Points : 272
    Points
    272
    Par défaut
    En base de données, une clé primaire est forcément indexé par un index garantissant l'unicité, c'est implicite.

    C'est la base de données qui crée automatiquement cet index.

    Donc il n'y a rien n'a spécifier de particulier...

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

Discussions similaires

  1. [optimisation] Reconstruction d'index et performances
    Par jenesuispasunrobot dans le forum Oracle
    Réponses: 6
    Dernier message: 03/02/2011, 14h31
  2. DB2 z/OS Index et performances
    Par keskidi dans le forum DB2
    Réponses: 7
    Dernier message: 16/05/2009, 14h42
  3. [9i] Vue, Performances et Index
    Par nuke_y dans le forum Oracle
    Réponses: 5
    Dernier message: 27/06/2005, 10h47
  4. [Performances] PK,FK et indexs
    Par booth dans le forum Oracle
    Réponses: 9
    Dernier message: 09/05/2005, 13h54
  5. [index] performance sur une recherche descendante
    Par jean-jacques varvenne dans le forum Oracle
    Réponses: 16
    Dernier message: 15/01/2005, 10h22

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