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

Administration SQL Server Discussion :

Problème avec les index


Sujet :

Administration SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Cpt Anderson
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    641
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 641
    Par défaut Problème avec les index
    Bonjour,

    j'explique mon problème:
    j'utilise SQL Server 2008 R2, je crée une base de données que je modifie dès sa création comme suit:
    ALTER DATABASE mabase COLLATE Latin1_General_CI_AI;
    Elle est donc en Case Insensitive. Parfait.

    La création de la base se déroule normalement mais lorsque je veux insérer des données dans un champs (de type string) d'une table qui contient un index unique (UQ_XXX), j'ai une violation d'accès qui me dit que je ne peux pas insérer des données en double. Fichtre.
    Je vérifie donc mes données. Pas de données en double ! mais en y regardant de plus près, j'ai une donnée '1234_TOTO_5678' et une autre '1234_toto_5678'. L'index est donc resté Case Sensitive !!!!

    D'ou ma question: que faut-il faire pour que les index soient eux aussi Case Insensitive ? ou alors comment contourner ce problème ?

    Merci d'avance

  2. #2
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Bonjour,

    Citation Envoyé par Cpt Anderson Voir le message
    Je vérifie donc mes données. Pas de données en double ! mais en y regardant de plus près, j'ai une donnée '1234_TOTO_5678' et une autre '1234_toto_5678'. L'index est donc resté Case Sensitive !!!!
    Vous vous trompez de sens...
    Dans le cas ou on est en case sensistive:
    TOTO <> toto
    Dans le cas ou on est en case insensitive:
    TOTO = toto

    Donc dans votre cas:
    1234_TOTO_5678 = 1234_toto_5678 car vous etes en case insensitive -> violation de l'unicite des donnees de votre index.

    Bonne journee

  3. #3
    Membre éclairé Avatar de Cpt Anderson
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    641
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 641
    Par défaut
    merci... je vais me recoucher....

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

Discussions similaires

  1. Problème avec les Z-index et les listbox
    Par volivi dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/05/2006, 12h30
  2. Problème avec les indexes sur une base de données.
    Par osoudee dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 09/02/2006, 09h24
  3. Réponses: 2
    Dernier message: 21/07/2005, 12h05
  4. Problème avec les fichiers .JPG
    Par cprogil dans le forum Langage
    Réponses: 5
    Dernier message: 10/06/2003, 15h44
  5. []Problème avec les formulaires Outlook
    Par Invité dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 09h59

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