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

2025-11-07 0 653

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() 

以上就是本文的全部内容,希望对大家的学习有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

遇见资源网 后端开发 Django执行源生mysql语句实现过程解析 https://www.ox520.com/4531.html

常见问题

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务