1.Django 中 models 利用 ORM 对 Mysql 进行查表的语句(多个语句)
字段查询
all():返回模型类对应表格中的所有数据。
get():返回表格中满足条件的一条数据,如果查到多条数据,则抛异常:MultipleObjectsReturned,
查询不到数据,则抛异常:DoesNotExist。
filter():参数写查询条件,返回满足条件 QuerySet 集合数据。
2.django 开发中数据库做过什么优化?
1.设计表时,尽量少使用外键,因为外键约束会影响插入和删除性能;
2.使用缓存,减少对数据库的访问;
3.在 orm 框架下设置表时,能用 varchar 确定字段长度时,就别用 text;
4.可以给搜索频率高的字段属性,在定义时创建索引;
5.Django orm 框架下的 Querysets 本来就有缓存的;
6.如果一个页面需要多次连接数据库,最好一次性取出所有需要的数据,减少对数据库的查询次数;
7.若页面只需要数据库里某一个两个字段时,可以用 QuerySet.values();
8.在模板标签里使用 with 标签可以缓存 Qset 的查询结果。