zoukankan      html  css  js  c++  java
  • 登陆时的密码大小写判断

    当密码没有加密时,数据库一般默认是大小写不区分的,这时不管你输入的是大写的还是小写的都可以登陆,刚开始用第二种方法虽然也可以解决但是是比较麻烦的.

    解决方法一:

    Alter TABLE 表名 
    Alter COLUMN 列名 varchar(
    100) COLLATE Chinese_PRC_CS_AS

    解决方法二:

    对登陆的密码大小写进行逐一判断

    ALTER FUNCTION [dbo].[StringUpperLowerValidate]
    (
    @strInput VARCHAR(
    128),
    @strExist VARCHAR(
    128
    )
    RETURNS BIT
    AS
    BEGIN
    DECLARE @position   INT 
    DECLARE @Result   BIT
    SET @position 
    = 1

    WHILE @position 
    <= DATALENGTH(@strExist)
        BEGIN
       IF( ASCII(SUBSTRING(@strExist, @position, 
    1))= ASCII(SUBSTRING(@strInput, @position, 1)))
        BEGIN
         SET @position 
    = @position + 1 
         SET @Result
    =1
        END
       ELSE
        BEGIN
         SET @Result
    =0
         
    break
        END
        END
        
    RETURN @Result

    END

    //不区分大小写(作用于表中存储的数据)
    Alter TABLE 表名
    Alter COLUMN 列名 varchar(
    100) COLLATE Chinese_PRC_CI_AS

    //区分大小写
    Alter TABLE 表名
    Alter COLUMN 列名 varchar(
    100) COLLATE Chinese_PRC_CS_AS

    //区分大小写(作用于表名、字段名……)
    alter database 数据库 collate chinese_prc_cs_as

    //不区分大小写
    alter database 数据库 collate chinese_prc_ci_as
  • 相关阅读:
    mysql常用的语句示例
    node的模块机制
    mongodb的一些技术点
    php的权限设置流程
    linux常用命令大全
    通过centos7.2搭建个人博客--------------服务器篇
    详解vuex时光机
    详解位运算符的一些特点
    一位资深程序员大牛给予Java初学者的学习路线建议
    JDBC
  • 原文地址:https://www.cnblogs.com/datong/p/1115992.html
Copyright © 2011-2022 走看看