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

Développement SQL Server Discussion :

Problème avec collate pour gérer la casse (mot de passe)


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Par défaut Problème avec collate pour gérer la casse (mot de passe)
    Bonjour (ou rebonjour pour certains).
    J'ai un problème sur une contrainte chargée de contrôler la casse. C'est pour un champ mot de passe qui doit comporter au moins une majuscule.

    Je suis sur SQL SERVER 2012.
    Le serveur est paramétré ainsi: FRENCH_CI_AS. Donc insensible à la casse mais sensible aux accents.
    Je fais une contrainte pour qu'un mot de passe comporte au moins 8 caractères, 1 majuscule, 1 caractère spécial et un chiffre.
    Avec la requête ci-dessous, tout fonctionne sauf le test sans majuscule.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE utilisateurs ALTER COLUMN motdepasse varchar(128) COLLATE  FRENCH_CS_AS NOT NULL;
    alter table utilisateurs add constraint verifiemdp check ( motdepasse like '%[0-9]%' and motdepasse like '%[A-Z]%' and motdepasse like '%[a-z]%' and motdepasse like '%[^a-zA-Z0-9]%' and len(motdepasse) >= 8);
    J'ai aussi essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     ... and UPPER(motdepasse) like '%[A-Z]%'...;
    J'ai fait quelques recherches préalables bien sûr (je débute) mais je n'ai pas trouvé de solution. Merci de m'avoir lu : )

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Et comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ALTER TABLE utilisateurs 
          ALTER COLUMN motdepasse varchar(128) COLLATE FRENCH_BIN2 NOT NULL;
    alter table utilisateurs 
          add constraint verifiemdp 
          check ( len(motdepasse) >= 8 AND
                  motdepasse like '%[0-9]%' and 
                  motdepasse like '%[A-Z]%' and 
                  motdepasse like '%[a-z]%' and 
                  (motdepasse NOT like '%[^a-z]%' OR
                   motdepasse NOT like '%[^A-Z]%' OR
                   motdepasse NOT like '%[^0-9]%' );

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Par défaut
    Merci SQLPro!

    J'ai juste eu à remplacer par et ça fonctionne.

    Juste surprenant que je ne puisse pas gérer mon problème avec FRENCH_CS_AS alors qu'il est par définition sensible à la casse.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    La casse et les accents ne sont pas les seules choses à gérer :
    1) les ligatures
    2) la largeur de caractère
    3) les kanatypes

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Invité
    Invité(e)
    Par défaut
    Mille excuses, grand maître, mais qu'est qu'un(e) kanatype ?

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Ce sont les différentes formes d'écriture du japonais : http://fr.wikipedia.org/wiki/Kana

    Le katakana comporte des idéogramme aux formes plutôt "cassantes" tandis que l'hiragana propose des formes plus "voluptueuses", mais ce sont les mêmes syllabes. On emploi principalement le katakana pour les titres et l'hiragana pour les textes. Cela correspond à peu près à l'écriture en capitale d'imprimerie ou en scripturale (les lettres que l'on apprend aux enfants avec les pleins et les déliés....

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

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

Discussions similaires

  1. Petit problème avec GCC pour l'Unicode...
    Par Nico*3-3 dans le forum Autres éditeurs
    Réponses: 6
    Dernier message: 29/01/2006, 17h12
  2. problème avec strtok pour récupérer les vides
    Par manikou dans le forum MFC
    Réponses: 4
    Dernier message: 02/06/2005, 20h08
  3. Problème avec COLLATE FR_FR
    Par nico27 dans le forum SQL
    Réponses: 4
    Dernier message: 27/02/2004, 13h20
  4. Réponses: 5
    Dernier message: 27/08/2003, 11h45

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