django查询mysql 区分大小写_Django+MySQL查询不区分大小写问题
最近发现一个现象是测试环境的 sqlite 是可以区分巨细写的。
就是说
Python
# sqlite 环境
>>> Company.objects.filter(name='Teambition')
]>
>>> Company.objects.filter(name='teambition')
]>
而到了线上的 MySQL 就不区分巨细写了。
Python
# MySQL 环境
>>> Company.objects.filter(name='teambition')
[]>, ]>]
获获得两个实例。 但这样不是我预想的。
早先我查询了官方文档, 获得指引使用__exact方式. 即:
Python
Company.objects.filter(name__exact='teambition')
然则无效!!!
由于测试环境的 sqlite 没有问题, 以是嫌疑在 mysql 的设置上面。 原来是字符集校对规则的问题, utf8_general_ci 不区分巨细写, 可以改成utf8_bin(将字符串中的每一个字符用二进制数据存储,区分巨细写。) 或者 utf8_general_cs(cs为case sensitive的缩写,即巨细写敏感).
然则, 由于我程序段没有操作数据库的权限, 以是没有去 alter 已经有的 TABLE。 我找到另外的一种解决方式
通过 DJANGO ORM 的extra, 在匹配语句上面加上BINARY来区分巨细写.
Python
if settings.ENV == 'prod':
# 线上的 MySQL 数据库加上 binary
app = Company.objects.extra(where=['binary name=%s'], params=[options['app'],]).first()
else:
# Sqlite 不做处置
app = Company.objects.filter(name=options['app']).first()
原文链接:https://www.cnblogs.com/feifeifeisir/p/12858933.html
本站声明:网站内容来源于网络,若有侵权,请联系我们,我们将及时处置。
django查询mysql 区分大小写_Django+MySQL查询不区分大小写问题相关推荐
- python制作查询网页_django+mysql实现网页查询
django+mysql实现网页查询 实现网页查询并返回结果,将查询关键字保存至数据库 环境: vscode 编辑器 python3.8.2 djangoVersion: 2.0 pip list P ...
- mysql教程多表查询_mysql重点,表查询操作和多表查询
表单查询 1. 完整的查询语句语法 select distinct(* or 字段名 or 四则运算 )from 表名 where 条件 group by 条件 having 条件 order by ...
- mysql性能优化-慢查询分析、优化索引和配置
目录 一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三.配置优化 1) max_con ...
- MySQL WHERE:条件查询
在使用 MySQL SELECT语句时,可以使用 WHERE 子句来指定查询条件,从 FROM 子句的中间结果中选取适当的数据行,达到数据过滤的效果. 语法格式如下: WHERE <查询条件&g ...
- mysql数据类型查询命令_Linux命令:MySQL系列之三--mysql数据类型及SQL结构化查询语句使用...
MySQL 存储引擎,也被称为表类型: MyISAM表:无事务处理功能,支持表锁 .frm:表结构定义文件 .MYD:表数据文件 .MYI:表索引文件 InnoDB表:支持事务处理功能,支持行锁 .f ...
- mysql的基本的查询语句_Mysql的基本查询语句
聚集函数 mysql有5个聚集函数,分别是AVG,MAX,MIN,SUM,COUNT. 分组 分组的使用group by作为关键字,having作为条件关键字. having和where的区别:1.w ...
- php sequelize,node,express_sequelize 联合查询,node,express,mysql,sequelize - phpStudy
sequelize 联合查询 我用sequelize 联合查询 db.user.hasMany(db.bbsuser,{foreignKey:'userId'}); db.bbsuser.belong ...
- mysql中的模糊查询(非原创)
Mysql 使用通配符进行模糊查询(like,%,_) 通配符的分类 1)%百分号通配符: 表示任何字符出现任意次数 (可以是0次). 2)_下划线通配符:表示只能匹配单个字符,不能多也不能少,就是一 ...
- mysql 缓存优缺点_MySQL查询缓存的优缺点
任职DBA一年多了,更正下博客. 其实MySQL8.0已经取消了查询缓存.如果是小型项目,又不想用Reids或者MC等缓存,查询结果相对固定,可以在MySQL5.7以下版本设置缓存. ######## ...
最新文章
- mysql2008jar包下载_求java jdbc 连sql server2008的jar包
- 现场总线和工业以太网
- Visual Studio 2008 可扩展性开发(九):总结篇
- Ubuntu 安装 Qt 开发环境 简单实现
- 22-React JSX语法
- Windows下的FFmpeg 、MEncoder、MPlayer下载地址
- 计组之中央处理器:5、微程序控制器(组成、原理、概念对比)
- 吴恩达机器学习练习3:Logistic regression(Multi-class Classification)
- Html显示缩略图点击展示,JS点击缩略图整屏居中放大图片效果
- PL/SQL数据类型
- vue-自定义组件传
- 给input设置css样式,input能改变css样式吗
- Tier1 OEM ODM 区别
- 爬取智联招聘岗位描述并根据描述生成词云
- ES集群状态一直yellow状态引发的思考
- kernel too old
- 苏嵌嵌入式linux实训 第1天
- 同轴电缆阻抗总结(电阻、阻抗、特性阻抗)
- pvifa怎么用计算机算,怎样用用“卡西欧”计算机fx-82ES PLUS 计算年金现值系数和年金终值系统?...
- Semantic Structure-BasedWord Embedding by Incorporating Concept Convergence and Word Divergence
热门文章
- Linux 受到开发者偏爱的 9 个理由
- 30 万奖金悬赏 | CSDN 软件开发精英赛即日启动
- Python 实现校园卡目标检测与文字识别系统
- GitCode 版本升级,让开发更加高效
- 树莓派竟出微控制器了!Raspberry Pi Pico 只需 4 美元!
- Pyston v2.0 发布,速度比 Python 快 20%!
- 用一首歌时间将 React 应用 Docker 化,成为前端 Star!
- Google排名第一的编程语言,死磕它这两点,小白也能学的会!不信你看!
- 滴滴技术总监受贿 1000 万,列入招聘黑名单,互联网大厂反腐有多强?
- 没错!Python 杀死了 Excel!