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

ASP.NET Discussion :

Probleme de méthode


Sujet :

ASP.NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut Probleme de méthode
    bonjour,
    j'ai une question un peu bateau...
    J'ai une base de données avec des id (numeriques) et des noms d'applications.
    Je ne peux avoir deux fois le même nom d'application. (pas deux fois arnaud, et pas de non plus Arnaud et ARNAUD).
    Le test pour qu'il n'y est pas deux fois le même nom, vous le faites dans la procédure stocké ou dans la classe ??
    Par avance, merci

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Plus simple de déclarer un index unique au niveau du champ non, non ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    En faity j'ai rajouté une contrainte d'unicité dans ma table. Mais cela ne prend la cast en compte
    cela marche pour arnaud sur arnaud
    mais pas sur arnaud sur ARNAUD

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Mets ta contrainte case-insensitive.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    en sql cela donne quoi, je n'arrive pas à trouver si on considere que ma table s'appele APPLICATION et mon champ NOM

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Quel SGBD utilises-tu ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    sql server

  8. #8
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Dans ce cas, il me semble que si le sort order de la colonne est case-insensitive, l'unicité l'est aussi.
    check ton sort order.

  9. #9
    Inscrit Avatar de bilb0t
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    378
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 378
    Points : 283
    Points
    283
    Par défaut
    Dans Sql Server, c'est la collation qui détermine le case (in)sensitive il me semble.

  10. #10
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Citation Envoyé par bilb0t Voir le message
    Dans Sql Server, c'est la collation qui détermine le case (in)sensitive il me semble.

    Oui, et comme c'est la collation qui détermine le sort order ...

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    en fait je suis devant l'editeur de contrainte de visual studio.
    et il me demande une contrainte, je ne vois pas quoi lui donner comme expression

  12. #12
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Ben, va plutot dans le Sql Server Management.

    - Sélectionne ta base
    - Sélectionne ta table
    - Sélectionne Columns
    - Sélectionne ta colonne
    - Menu contextuel : Modify
    - Dans le property grid : Collation
    - Puis vérifie l'état :

    Tu dois avoir :

    Window Collation coché / Dictionnary Sort coché/ Case Sensitive décoché.

    C'est plus simple d'utiliser l'outil kivabien plutôt que de passer par VS pour administrer une base, non ?

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    Citation Envoyé par snopims Voir le message
    bonjour,
    j'ai une question un peu bateau...
    J'ai une base de données avec des id (numeriques) et des noms d'applications.
    Je ne peux avoir deux fois le même nom d'application. (pas deux fois arnaud, et pas de non plus Arnaud et ARNAUD).
    Le test pour qu'il n'y est pas deux fois le même nom, vous le faites dans la procédure stocké ou dans la classe ??
    Par avance, merci
    pour reprendre le début, j'ai fait comme on a dit dans la base, le problème est que maintenant si je ne fais pas de test dans le code, j'ai un retour d'exception [System.Data.SqlClient.SqlException] or j'ai un soucis car si mon exception est du à ma contrainte je gere d'une facon mais si ce n'est aps du à ma contriante je fais d'une autre façon. Or comment je sais dans mon exception que cela est du à la contrainte ???

  14. #14
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    En regardant le message de l'SqlException.

    ceci dit rien ne t'empêche de tenter de lire sur le nom avant d'écrire (tout en gardant l'index unique, car il vaut mieux contraindre par la base que par le code)

  15. #15
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Toute contrainte (ou presque) doit être testée d'abord par la couche métier, et ensuite par la source de données. Tout particulièrement lorsque tu intercales une couche de service entre le métier et la source de données.

Discussions similaires

  1. Probleme de méthode inexistante
    Par L'aigle de Carthage dans le forum Maven
    Réponses: 1
    Dernier message: 25/04/2011, 13h46
  2. probleme de méthode
    Par lilsou dans le forum Mathématiques
    Réponses: 3
    Dernier message: 16/04/2009, 12h47
  3. Probleme de méthode équivalente
    Par joe la mouk dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 02/04/2009, 17h20
  4. VBA Acess probleme de méthode
    Par darkspoilt dans le forum VBA Access
    Réponses: 1
    Dernier message: 18/06/2007, 10h13
  5. Probleme de méthode
    Par darkspoilt dans le forum VBA Access
    Réponses: 3
    Dernier message: 03/06/2007, 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