Django打印出在数据库中执行的语句问题

yipeiwu_com7年前Python基础

先给大家介绍下Django打印出在数据库中执行的语句

有时我们需要看models操作时对应的SQL语句,

可以用如下方法查看---

在django project中的settings文件尾部添加如下代码

LOGGING = {
  'version': 1,
  'disable_existing_loggers': False,
  'handlers': {
    'console': {
      'class': 'logging.StreamHandler',
    },
  },
  'loggers': {
    'django.db.backends': {
      'handlers': ['console'],
      'level': 'DEBUG' if DEBUG else 'INFO',
    },
  },
}

ps:Django 查看执行的sql语句方法

1、该方法只能查看select语句,对于其他更新保存的语句不能查看,会报错:

res = Province.objects.all()
print (res.query)
SELECT 'core_province'.'id', 'core_province'.'name', 'core_province'.'code' FROM 'core_province'

2、该方法会打印出所有执行过的sql语句

1、先导入connection

from django.db import connection

2、在python文件中打印

print(connection.queries)
# 打印列表中的最后一条sql
# print(connection.queries[-1])

总结

以上所述是小编给大家介绍的Django打印出在数据库中执行的语句问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

pycharm双击无响应(打不开问题解决办法)

pycharm双击无响应(打不开问题解决办法)

之前好好的pycharm,突然双击打不开了,怎么办? 亲测有效方案: 第一步:进入如下路径,找到cmd.exe,右键选择“以管理员身份运行”; 第二步:在打开的cmd窗口中,输入net...

Python文件和目录操作详解

Python文件和目录操作详解

一、文件的打开和创建 1、打开 复制代码 代码如下: open(file,mode): >>>fo = open('test.txt', 'r') >>&g...

Python中sorted()排序与字母大小写的问题

今天我在练习python时,对字典里的键用sorted排序时发现并没有按照预期排序 研究后发现字母大小写会影响排序 首先创建一个字典,键里面的首字母有大写有小写 favorite_...

python3+PyQt5实现使用剪贴板做复制与粘帖示例

python3+PyQt5实现使用剪贴板做复制与粘帖示例

本文是对《Python Qt GUI快速编程》的第10章的例子剪贴板用Python3+PyQt5进行改写,分别对文本,图片和html文本的复制与粘帖,三种做法大同小异。 #!/usr...

使用python代码进行身份证号校验的实现示例

使用python代码进行身份证号校验的实现示例

先说,还有很多可以优化的地方。 1、比如加入15位身份证号的校验,嗯哼,15位的好像没有校验,那就只能提取个出生年月日啥的了。 2、比如判断加入地址数据库,增加输出信息 3、增加时间判...