Django执行源生mysql语句实现过程解析


Posted in Python onNovember 12, 2020

1.使用extra方法

解释:结果集修改器,一种提供额外查询参数的机制

说明:依赖model模型

使用方式:

用在where后:

Book.objects.filter(publisher_id="1").extra(where=["title='python学习1'"])

用在select后

Book.objects.filter(publisher_id="1").extra(select={"count":"select count(*) from hello_book"})

2.使用raw方法

解释:执行原始sql并返回模型

说明:依赖model多用于查询

使用方式:

book = Book.objects.raw("select * from hello_book") #返回模型实例

for item in book:



print(item.title)

3.执行自定义SQL

解释:利用游标执行

导入:from django.db import connection

说明:不依赖model

使用方式:

from django.db import connection

cursor = connection.cursor()
# 插入
cursor.execute("insert into hello_author(name) values('xiaol')")
# 更新
cursor.execute("update hello_author set name='xiaol' where id=1")
# 删除
cursor.execute("delete from hello_author where name='xiaol'")
# 查询
cursor.execute("select * from hello_author")
# 返回一行
raw = cursor.fetchone()
print(raw)
# 返回所有
# cursor.fetchall() 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用xlrd实现检索excel中某列含有指定字符串记录的方法
May 09 Python
利用django如何解析用户上传的excel文件
Jul 24 Python
python3实现域名查询和whois查询功能
Jun 21 Python
python中int与str互转方法
Jul 02 Python
vue.js实现输入框输入值内容实时响应变化示例
Jul 07 Python
Flask框架踩坑之ajax跨域请求实现
Feb 22 Python
python ddt数据驱动最简实例代码
Feb 22 Python
python日志模块logbook使用方法
Sep 19 Python
在Python中使用MySQL--PyMySQL的基本使用方法
Nov 19 Python
django多种支付、并发订单处理实例代码
Dec 13 Python
Python集成开发工具Pycharm的安装和使用详解
Mar 18 Python
Python还能这么玩之用Python修改了班花的开机密码
Jun 04 Python
Django Model层F,Q对象和聚合函数原理解析
Nov 12 #Python
在Python中字典按值排序的实现方法
Nov 12 #Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
Nov 12 #Python
通过代码简单了解django model序列化作用
Nov 12 #Python
Django contrib auth authenticate函数源码解析
Nov 12 #Python
python 获取字典键值对的实现
Nov 12 #Python
Sentry错误日志监控使用方法解析
Nov 12 #Python
You might like
Zerg剧情介绍
2020/03/14 星际争霸
php smarty模版引擎中变量操作符及使用方法
2009/12/11 PHP
php使用ereg验证文件上传的方法
2014/12/16 PHP
JQuery右键菜单插件ContextMenu使用指南
2014/12/19 Javascript
JavaScript数组各种常见用法实例分析
2015/08/04 Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
2016/05/17 Javascript
json对象转为字符串,当做参数传递时加密解密的实现方法
2016/06/29 Javascript
基于vue实现分页/翻页组件paginator示例
2017/03/09 Javascript
JS+HTML5实现上传图片预览效果完整实例【测试可用】
2017/04/20 Javascript
理解javascript async的用法
2017/08/22 Javascript
JS中的事件委托实例浅析
2018/03/22 Javascript
vue项目实现github在线预览功能
2018/06/20 Javascript
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
如何利用node.js开发一个生成逐帧动画的小工具
2019/12/01 Javascript
[42:56]VGJ.S vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
Python 用Redis简单实现分布式爬虫的方法
2017/11/23 Python
python机器学习之贝叶斯分类
2018/03/26 Python
numpy中以文本的方式存储以及读取数据方法
2018/06/04 Python
django 外键model的互相读取方法
2018/12/15 Python
使用python3实现操作串口详解
2019/01/01 Python
Python字典循环添加一键多值的用法实例
2019/01/20 Python
Mac中PyCharm配置Anaconda环境的方法
2020/03/04 Python
python 链接sqlserver 写接口实例
2020/03/11 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
2020/04/07 Python
python 实现控制鼠标键盘
2020/11/27 Python
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
2014/05/07 HTML / CSS
用HTML5制作烟火效果的教程
2015/05/12 HTML / CSS
html5中的一些标签学习(心得)
2016/10/18 HTML / CSS
巴西婴儿用品商店:Bebe Store
2017/11/23 全球购物
台湾流行服饰购物平台:OB严选
2018/01/21 全球购物
Linux管理员面试题 Linux admin interview questions
2016/07/08 面试题
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
工作会议主持词
2014/03/17 职场文书
超市创业计划书
2014/04/24 职场文书
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers