查看django执行的sql语句及消耗时间的两种方法

yipeiwu_com6年前Python基础

下面介绍两种查看django 执行的sql语句的方法。

方法一:

queryset = Apple.objects.all()
print queryset.query

SELECT `id`, `name` FROM `apple`

该方法只能查看select语句,但不能查看其他更新保存的语句,会报错。

也就是说只有 Queryset 有query方法。接下来看第二种方法。

方法二:

from django.db import connection

print connection.queries
[{u'time': u'0.098', u'sql': u'SELECT `app_detail`.`app_id` FROM `app_detail` WHERE `app_detail`.`id` = 20 '}]

会打印所有执行过的sql语句及消耗的时间,非常有用。

如果有多个数据库,可以使用以下方法选择数据库:

from django.db import connections

c = connections['Fruits']
print c.queries

选择连接'Fruits'数据库,打印相关的sql语句。

以上这篇查看django执行的sql语句及消耗时间的两种方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用CMD模块更优雅的运行脚本

本文实例讲述了Python使用CMD模块更优雅的运行脚本的方法。分享给大家供大家参考。具体分析如下: 平时由于经常给测试人员调试一些东西,虽然写了一些脚本,感觉还是不方便。 python...

python super的使用方法及实例详解

功能 super功能:super函数是子类用于调用父类(超类)的一个方法。 用法 1.在子类 __init__() 方法中正确的初始化父类,保证相同的基类只初始化一次。 2.覆盖特...

Python读取网页内容的方法

本文实例讲述了Python读取网页内容的方法。分享给大家供大家参考。具体如下: import urllib2 #encoding = utf-8 class Crawler: d...

PyCharm安装Markdown插件的两种方法

PyCharm安装Markdown插件的两种方法

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。 从github下载的代码一般都会带有README.md文件,该文件是...

django-rest-framework 自定义swagger过程详解

django-rest-framework 自定义swagger过程详解

前言 之前的文章编写了一个返回json的例子,直接用浏览器进行get请求虽然成功了, 但是接口文档的样式很难看, 不好用. 而且提示没有访问权限. 我们一般都希望能够直接在接口文档中...