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中删除文件的程序代码
Mar 13 Python
python dict remove数组删除(del,pop)
Mar 24 Python
初步理解Python进程的信号通讯
Apr 09 Python
Python科学计算之NumPy入门教程
Jan 15 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
Feb 23 Python
python求解数组中两个字符串的最小距离
Sep 27 Python
python字典嵌套字典的情况下找到某个key的value详解
Jul 10 Python
python爬虫刷访问量 2019 7月
Aug 01 Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
Feb 21 Python
Python网络爬虫四大选择器用法原理总结
Jun 01 Python
python两个list[]相加的实现方法
Sep 23 Python
15款Python编辑器的优缺点,别再问我“选什么编辑器”啦
Oct 19 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
Yii2使用dropdownlist实现地区三级联动功能的方法
2016/07/18 PHP
详解PHP中的序列化、反序列化操作
2017/03/21 PHP
php 数组元素快速去重
2017/05/05 PHP
JavaScript 原型与继承说明
2010/06/09 Javascript
jquery.hotkeys监听键盘按下事件keydown插件
2014/05/11 Javascript
js简单的点击返回顶部效果实现方法
2015/04/10 Javascript
jquery插件uploadify实现带进度条的文件批量上传
2015/12/13 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
2016/11/10 Javascript
jQuery remove()过滤被删除的元素(推荐)
2017/07/18 jQuery
JavaScript创建对象的常用方式总结
2018/08/10 Javascript
jQuery实现的淡入淡出图片轮播效果示例
2018/08/29 jQuery
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
vue表单中遍历表单操作按钮的显示隐藏示例
2019/10/30 Javascript
使用JS监听键盘按下事件(keydown event)
2019/11/07 Javascript
微信小程序实现导航栏和内容上下联动功能代码
2020/06/29 Javascript
vue中提示$index is not defined错误的解决方式
2020/09/02 Javascript
Flask 让jsonify返回的json串支持中文显示的方法
2018/03/26 Python
基于python OpenCV实现动态人脸检测
2018/05/25 Python
python中for用来遍历range函数的方法
2018/06/08 Python
使用Selenium破解新浪微博的四宫格验证码
2018/10/19 Python
使用 Supervisor 监控 Python3 进程方式
2019/12/05 Python
Python3自动生成MySQL数据字典的markdown文本的实现
2020/05/07 Python
如何表示python中的相对路径
2020/07/08 Python
pytorch 多分类问题,计算百分比操作
2020/07/09 Python
Python爬虫获取豆瓣电影并写入excel
2020/07/31 Python
英国最全面的橄榄球联盟门票网站:Live Rugby Tickets
2018/10/06 全球购物
世界顶级户外运动品牌折扣网站:LeftLane Sports
2019/06/12 全球购物
深圳-东方伟业笔试部分
2015/02/11 面试题
质检员岗位职责
2013/12/17 职场文书
文明教师事迹材料
2014/01/16 职场文书
竞争上岗实施方案
2014/03/21 职场文书
三字经教学反思
2014/04/26 职场文书
房地产资料员岗位职责
2014/07/02 职场文书
2014年志愿者工作总结
2014/11/20 职场文书
Python游戏开发实例之graphics实现AI五子棋
2021/11/01 Python
Java实现简单小画板
2022/06/10 Java/Android