`
meohao
  • 浏览: 97735 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

写在20120423:让SQLite不区分大小写

 
阅读更多
SQLite本身是区分大小写查询的,大部分数据库在进行字符串比较的时候,对大小写是不敏感的,但是在SQLite中,对大小写是敏感的。

那么有时候有这样的需求,让SQLite不区分大小写查询,那么有如下三种方式:
1.使用大小写转换函数LOWER、UPPER。
2.在进行比较时强制声明不区分大小写:"COLLATE NOCASE" 。
3.创建表时声明该字段不区分大小写。

这三种方式有相应的优缺点,那么下面是它们使用的场景:
1.如果任何情况都不需要大小写敏感,方式3就是最好的解决方案
2.如果只是少量查询对大小写不敏感,可以用方案2
3.方案一由于用到了函数,可能会有额外的性能消耗,一般不推荐使用。
分享到:
评论

相关推荐

    db_text_search:ActiveRecord之上的统一接口,用于不区分大小写的字符串和前缀查询,以及在SQLite,MySQL和PostgreSQL上的全文本搜索

    在向现有CI(不区分大小写)或CS(区分大小写)列的迁移中添加索引: DbTextSearch :: CaseInsensitive . add_index connection , :users , :username # Options: name, unique 或者,创建一个新的CI列: Db

    SQLite3的性能优化

    其中,0 表示忽略大小写,1 表示区分大小写。 四、count_changes count_changes 是 SQLite3 中的一个重要参数。通过设置 count_changes 标记,可以使得 INSERT, UPDATE 和 DELETE 语句返回数据。缺省情况下,以上...

    SQLite字符串比较时的大小写问题解决方法

    然而,在处理字符串比较时,SQLite默认的行为是区分大小写的,这可能会导致一些未预期的结果,尤其是在用户输入数据时。以下是对SQLite字符串比较时大小写问题的三种解决方法的详细解析: 1. 使用大小写转换函数...

    windows下sqlite安装使用和性能优化及设置

    - **说明**:默认情况下,LIKE 运算符对 latin1 字符不区分大小写。如果需要进行精确的大小写匹配,可以通过设置此参数为 1 来启用。 通过以上步骤,你可以成功地在 Windows 系统下安装并使用 SQLite 数据库,并...

    C++ Sqlite3的使用方法

    |SQLite3简介 SQLite3只是一个轻型的嵌入式数据库引擎,占用资源非常低,处理速度比Mysql还快,专门用于移动设备上进行适量的数据存取,它只是...特点:不区分大小写,每条语句后加”;”结尾。 关键字:select、inse

    数据库转sqlite数据库

    access库转sqlite库 1、可以转换access表中的主键、自增长...7、sqlite下,默认是区分大小写的,而access没有,故把字符类型的字段的Collate设置为NOCASE 8、开发所用时间:一周左右(业余时间) 9、开发环境:delphi6+xp

    SQLite3中的数据类型

    它不区分大小写,除非使用特定的SQL函数进行比较。TEXT类型可以自动容纳各种长度的字符串,无需预先指定。 5. BLOB类型 BLOB(Binary Large Object)用于存储二进制数据,如图片、音频或文档等。BLOB类型不关心...

    sqlite物理文件结构

    SQLite是一种轻量级的数据库管理系统,它将整个数据库存储在一个单独的磁盘文件中,并且无需独立的服务器进程或系统管理任务。这意味着用户可以在没有专职DBA的情况下运行数据库应用。本文将深入探讨SQLite数据库...

    Sqlite3支持的数据类型

    TEXT类型在存储和比较时是区分大小写的,除非使用特定的函数进行转换。 5. BLOB(二进制大对象) BLOB类型用于存储任意的二进制数据,如图像、音频片段或者任何其他非文本格式的数据。BLOB没有特定的字符集,因此不...

    用python sqlite3给已经有的表增加字段

    用python sqlite3给已经有的表增加字段。sql语句的写法,表名用自己的,其他的请严格区分大小写,要不然不会成功。

    SQlite JSON Connection

    2. 字符串处理函数:如`Trim`去除字符串首尾空格,`LowerCase`和`UpperCase`进行大小写转换,`CompareText`进行不区分大小写的字符串比较等。 3. 编码和解码:可能包括对Unicode和ASCII编码的支持,如`UTF8ToUTF16`...

    DatatypesInSQLiteVersion3中文版SQLite3的数据类型.rar

    SQLite3支持Unicode字符,并且不区分大小写。字符串可以使用单引号或双引号包围。 5. BLOB:代表二进制大对象,用于存储任意字节流,如图片、音频或文档等。 6. NUMERIC:这是一个特殊的数据类型,用于表示数字,...

    access库转sqlite库

    access库转sqlite库 1、可以转换access表中的主键、自增长字段、字段类型、字段长度...7、sqlite下,默认是区分大小写的,而access没有,故把字符类型的字段的Collate设置为NOCASE 8、开发所用时间:一周左右(业余时间)

    android sqlite

    在SQLite中,注释是以连续的两个减号(“--”)开始的,它不区分大小写。创建数据库表时,可以指定字段类型和约束。如 INTEGER PRIMARY KEY AUTOINCREMENT 表示该字段为整数类型的主键并且是自增的。如果某个字段...

    Android-SQLite3_超基础入门

    这些类型不区分大小写。 - **其他特性**:SQLite不支持某些传统关系数据库所具备的功能,例如`FOREIGN KEY`外键约束、`RIGHT OUTER JOIN`和`FULL OUTER JOIN`等。 #### 三、配置与环境准备 在开始使用SQLite之前,...

    sqlitedll-3_3_12

    中文字符集处理可能在这些版本中出现了错误,导致在进行LIKE或ILIKE(不区分大小写的模糊查询)操作时,无法正确返回包含中文字符的结果。而3.3.12版本由于修复了这个问题,所以被视为一个解决此问题的稳定版本。 ...

    SQLite语法 表达式

    不区分大小写的匹配仅限于7-bit拉丁字符。 2. `ESCAPE` 子句可以定义逃逸字符,用于在模式中保留百分号或下划线的特殊含义。 3. `GLOB` 运算符使用 Unix 文件 globbing 语法,区分大小写。 4. `REGEXP` 运算符对应...

    iOS 原生sqlite3的使用方法

    1. 不区分大小写:尽管在编写SQL语句时,通常建议将关键字大写以提高可读性,但SQLite实际上不区分大小写。例如,`CREATE TABLE` 和 `create table` 是等效的。 2. 语句结束:每条SQL语句的末尾通常应使用分号(;)...

    FS7X 企业级 C/S 管理软件

    用户名不区分大小写,密码区分大小写。 用户可在 Server\settings\server.conf 中修改管理员的用户名和密码。 Admin 为管理员用户,享有完全权限。 用户可以在【人事】功能中为员工进行功能授权。 特点: FS7X ...

Global site tag (gtag.js) - Google Analytics