PythonWeb开发Django框架学习(九)使用Model类操作数据库数据
来源:互联网 发布:淘宝代运营有效果吗 编辑:程序博客网 时间:2024/05/17 13:05
上次说到了如何将Model类与数据库建立联系,这次呢就说一下在连接数据库之后,如何使用Model中的实体类对数据库中的数据进行增删改查的操作。
我之前说过啦,为了方便学习我使用的是windows操作系统,所以我安装了一个SqliteStudio的工具,帮助我查看数据库。还有就是这节所涉及的代码操作性很强,我就不一一截图演示说明啦,关键在于每个人自己去试试。
我将实验之后没有太大问题(注:当然基础学习嘛肯定还是没有注意其他问题的,例如删除的对象不存在怎么办)的代码贴在下面,自己进行验证吧
1.增加数据:
newstu = Student(name="abc",age=25,intime="2011-09-07")#创建一个实体类对象newstu.save()#将对象进行保存就相当于执行insert into 语句
2.删除数据:studentDel = Student.objects.get(id=6)#获取单个对象,相当于执行"select * from student where id = 6"studentDel.delete()#相当于执行delete语句
3.修改数据:student = Student.objects.get(id = 2)#获取单个对象等同于 select * from student where id = 2#修改对象的属性值,进行保存就相当于修改了字段的值啦student.name = "Tom"student.age = 30student.save()
4.查询数据:(在这里面有个名词叫做过滤器,就相当于过滤数据的吧)studentList = Student.objects.all()#查询所有数据#studentList = Student.objects.all().order_by("age")#查询出来的所有数据根据age排序#studentList = Student.objects.filter(age = 20)#引入过滤器,可以搜索age=20的学生#studentList = Student.objects.filter(age__gt=20)#引入过滤器,age__gt = 20代表age>20 ;age__gte = 20代表age>=20#studentList = Student.objects.filter(name__contains = "张")#引入过滤器name__contains代表name like "% %"
当然有关的filter操作还有很多,我在这里就列举一些:5.结合查询和其他操作可以执行批量修改或者批量删除等等操作,例如:
studentList = Student.objects.filter( age__lt = 21).update(name="Jake")上面这条语句就是说将所有age<21的数据的name改成Jake
好啦,这就是简单的增删改查的操作啦。
阅读全文
0 0
- PythonWeb开发Django框架学习(九)使用Model类操作数据库数据
- PythonWeb开发Django框架学习(十一)使用框架自带Admin管理数据库数据
- PythonWeb开发Django框架学习(八)Model与数据库初步
- PythonWeb开发Django框架学习(十)数据库一对多和多对多操作
- pythonWeb -- Django开发- 模型Model 和 数据库的操作
- PythonWeb开发Django框架学习(五)Template标签
- PythonWeb开发Django框架学习(六)Tempalte过滤器
- PythonWeb开发Django框架学习(七)URL的配置
- PythonWeb开发Django框架学习(十二)基础总结
- PythonWeb 开发Django框架(一) 环境搭建
- PythonWeb开发Django框架(三)模板Templates初步
- PythonWeb开发Django11框架学习(四)Template进一步
- pythonWeb -- Django开发- Admin
- Django学习06---Model模型(数据库)
- Django学习笔记(四)Django使用操作数据库
- pythonWeb -- Django开发-创建一个Django项目
- Django框架学习-Model篇
- Django学习笔记(九)--django框架的bug总结
- GCD实现单个页面多个网络请求,需要监听所有网络请求结束后刷新UI的处理
- Android通知与消失的导航
- linux 创建用户并给用户添加sudo权利
- POI在同一个Excel文件中创建多个sheet页并分别命名
- Android L使用adb命令获取FocusedApp 包名错误(原生bug)
- PythonWeb开发Django框架学习(九)使用Model类操作数据库数据
- windows下用Anaconda3做基于维基百科中文word2vec训练
- Android系统权限
- 软件测试之App测试-用户体验测试
- 数据库设计原则
- respond.js media query
- 微信的微信支付终于弄好了
- Splatter Painting
- Spark集群搭建