蓝盟IT小贴士,来喽!
原因
使用Django时,通常可以使用Django附带的model查询。 基本上可以满足80%的问题
但是,那20%不需要吗? 不行,是孩子选的
在Django中运行本机SQL有三种方法
额外
原始数据
jango连接
一般来说,关于以上三种方式
表结构
文件: django _项目/app 01 /模型
很简单的书表
在admin中输入和使用一些数据测试
extra方式
强烈推荐,不学习也没用
原始方式
这和extra相比,还是有用的
真正的本机sql方式
上面说的其实和django的model有点绑定。 但我想要原生sql。 不要绑定任何东西。
在本例中,请勿在django中使用pymysql运行本机sql。 会发生奇怪的问题。 必须导入来自django.db导入连接以运行sql。
如你所见,返回的是列表中一个接一个的数组。 我在想有没有办法把查过的sql直接放回词典里。 答案当然是!
运行本机sql并将其恢复为dict
我们将执行本机sql并直接返回词典的方法封装到了两个函数中
上述总结
在django中运行本机sql有三种方法: extra、raw和从django.db导入连接
其中extra基本没用,raw来得及,但和models有绑定,连接最灵活,但默认返回[tuple,tuple,tuple,]格式。
经过改进,封装了两种方法。 query_all_dict、query_one_dict、一个是多个查询、一个是单个查询,我们返回到了“dict、dict、dict、”。
文/上海蓝盟 IT外包专家