django数据库基本操作增删改查

简介:

1、插入数据


[python] view plain copy

>>> from books.models import Publisher  

>>> p1 = Publisher(name='Apress', address='2855 Telegraph Avenue',  

...     city='Berkeley', state_province='CA', country='U.S.A.',  

...     website='http://www.apress.com/')  

>>> p1.save()  


2、查询


[python] view plain copy

>>> Publisher.objects.all()  

[<Publisher: Apress>, <Publisher: O'Reilly>]  

获取单个对象:


[python] view plain copy

>>> Publisher.objects.get(name="Apress")  

<Publisher: Apress>  

如果结果是多个对象或者没有返回结果则会抛出异常


3、条件


筛选:

[python] view plain copy

>>> Publisher.objects.filter(name='Apress')  

[<Publisher: Apress>]  


[python] view plain copy

>>> Publisher.objects.filter(name__contains="press")  

[<Publisher: Apress>]  

__contains部分会被Django翻译成LIKE语句

排序:


[python] view plain copy

>>> Publisher.objects.order_by("name")  

[<Publisher: Apress>, <Publisher: O'Reilly>]  

相当于 order by name asc

[python] view plain copy

>>> Publisher.objects.order_by("-name")  

加个负号相当于 order by name desc


限制返回数据:


[python] view plain copy

>>> Publisher.objects.order_by('name')[0]  

<Publisher: Apress>  

相当于 limit 1

[python] view plain copy

>>> Publisher.objects.order_by('name')[0:2]  

相当于 OFFSET 0 LIMIT 2


4、更新


[python] view plain copy

>>> Publisher.objects.filter(id=52).update(name='Apress Publishing')  


[python] view plain copy

>>> p = Publisher.objects.get(name='Apress') #先查询  

>>> p.name = 'Apress Publishing' #更新  

>>> p.save()  #保存  


5、删除

[python] view plain copy

>>> p = Publisher.objects.get(name="O'Reilly")  

>>> p.delete()  


[python] view plain copy

>>> Publisher.objects.filter(country='USA').delete()  





     本文转自aaron428 51CTO博客,原文链接:http://blog.51cto.com/aaronsa/1741774,如需转载请自行联系原作者


相关文章
|
3月前
|
JavaScript 数据库 Python
django实现增删改查分页接口
django实现增删改查分页接口
|
2月前
|
关系型数据库 MySQL 数据库
|
3月前
|
SQL 关系型数据库 MySQL
MySQL | 数据库的管理和操作【表的增删改查】(一)
MySQL | 数据库的管理和操作【表的增删改查】
|
3月前
|
SQL 关系型数据库 MySQL
MySQL | 数据库的管理和操作【表的增删改查】(二)
MySQL | 数据库的管理和操作【表的增删改查】(二)
|
3月前
|
前端开发 数据库 Python
使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
【1月更文挑战第13天】使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
89 7
|
13天前
|
关系型数据库 API 数据库
Django中的数据库事务管理:确保数据一致性
【4月更文挑战第15天】Django框架提供强大的数据库事务管理,确保ACID属性,保证数据一致性和完整性。文章深入讨论了Django事务管理,包括使用`@transaction.atomic`装饰器和`transaction.atomic()`上下文管理器手动控制事务,以及低级API进行精细管理。注意避免长时间事务、选择合适隔离级别、正确处理异常及了解数据库特性。掌握这些技巧对构建可靠Web应用至关重要。
|
16天前
|
关系型数据库 MySQL 数据库连接
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
54 11
|
1月前
|
SQL 存储 关系型数据库
【C/C++ 应用开发 数据库】入门 Qt数据库编程:从基本操作到高级技巧
【C/C++ 应用开发 数据库】入门 Qt数据库编程:从基本操作到高级技巧
77 0
|
1月前
|
存储 SQL 数据库
django如何连接sqlite数据库?
django如何连接sqlite数据库?
52 0
|
1月前
|
SQL 数据库连接 API
python链接数据库,实现数据增删改查
python链接数据库,实现数据增删改查
25 7