Django打印出在数据库中执行的语句问题
时间:2021-03-21 10:30:59|栏目: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])
总结






