首页 > 数据库技术 > 详细

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

时间:2016-02-13 15:49:20      阅读:193      评论:0      收藏:0      [点我收藏+]

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()  


本文出自 “我的运维时光” 博客,请务必保留此出处http://aaronsa.blog.51cto.com/5157083/1741774

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

原文:http://aaronsa.blog.51cto.com/5157083/1741774

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!