Django使用ORM可以直接来操作数据库。那么如果我们使用ORM想要查看原生数据库代码该怎么做呢。有如下两种方式
一种方式是对查询集(queryset)的结果后面.query
可以查看该语句的原生sql语句,如图所示
这一种方式可以直接查看queryset的原生sql。但是不能查看非查询集对象的sql语句。如果我们要一直查看原生sql语句,那么就可以用第二种方式在settings中配置相关代码。
第二种方式是配置文件如下:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console':{
'level':'DEBUG',
'class':'logging.StreamHandler',
},
},
'loggers': {
'django.db.backends': {
'handlers': ['console'],
'propagate': True,
'level':'DEBUG',
},
}
}
用法也很简单,直接将以上配置复制粘贴到settings.py文件里面即可。
效果如图:
直接就可以查看原生SQL语句了。