在cmd 上运行 python manage.py shell
 
引入models的定义
from app.models import  myclass   ##先打这一行 
 
------这些是例子的models格式------
class  myclass():
     aa =  models. CharField (max_length=None) 
     bb =  models. CharField (max_length=None) 
     def __unicode__(self):
         return u'%s %s' %(aa,bb)
------这些是例子的models格式------

添加一行数据1
add = myclass(aa='wahaha',bb='hahawa' )
add.save() #不save无法保存到数据库
add.id #获取增加的这条数据的ID
添加一行数据2
myclass.objects.create(aa='wahaha',bb='hahawa')  # 同上1方法一样无需保存save
 
 
删除表中全部数据
myclass.objects.all().delete()
删除一条aa等于'test'的数据
myclass.objects.get(aa='test').delete()
删除多条数据
myclass.objects.filter(aa='123').delete() #过滤出aa字段等于123的都删除
 

查出库中所有条数的数据

myclass.objects.all()
查询带字段名的所有条数数据
myclass.objects.all().values()
查询单挑数据
myclass.objects.get(aa='123') #查询aa字段中是123的这条数据,如果是多条和没有的时候会报错,尽量结合try:except使用 
查询匹配条件的多条数据
myclass.objects.filter(aa='123') #查询aa字段值为123的所有数据条数,括号的匹配条件可多个,以逗号分隔
模糊查询
myclass.objects .filter(aa__contains="1") #查询aa字段中值包含'1'的数据,例如aa字段值为 123 154 这两条都能匹配
根据字段内容排序后展示数据
myclass.objects.order_by('aa')  #根据aa字段的内容进行数据排序,会根据字母和数字排序
根据字段内容逆向排序后展示数据,加一个负号
 
myclass.objects .order_by('-aa' )  #根据aa字段的内容进行逆向数据排序,会根据字母和数字排序
连锁查询,先过滤,过滤后进行逆向排序
 

myclass.objects.filter(aa='123') .order_by("‐aa")

限制数据条数,相当于mysql limit
myclass.objects.filter(aa='123')[0]  #[0]显示第一条 [0:2]会显示前两条
myclass.objects.filter(aa='123').order_by("‐aa")[0] #切片不支持负数,这样就数据序列倒过来的第一条,也就是最后一条数据

 

更新数据
a = userinfo.objects.get(cellPhone='13133333333') #查询一条你要更新的数据
a.cellPhone='3111111111111'   #赋值给你要更新的字段
a.save() #保存
更新多个字段或一个字段
myclass.objects .get(aa='123').update(aa='321',bb="wahaha") #update可多条
更新所有字段
myclass.objects.all().update(aa='8888') #更新所有字段,更新后会显示受影响的条数

django models进行数据库增删查改的更多相关文章

  1. Django学习笔记009-django models进行数据库增删查改

    引入models的定义 from app.models import  myclass class  myclass(): aa =  models. CharField (max_length=No ...

  2. Django框架model实现数据库增删查改

    1.创建Django工程 https://www.cnblogs.com/CK85/p/10159159.html 2.在model.py中配置生成表格的类对象. from django.db imp ...

  3. go iris xorm包使用(sqlite3数据库增删查改)

    官网https://studyiris.com/example/orm/xorm.html例子,稍做修改 1.我是win64,但没有遇到mingw问题,应该是之前安装过gcc环境,参考:测试一下rob ...

  4. 【总结】C# Access 数据库 增删查改 的简单步骤

        引用集: using System.Data.OleDb; static string exePath = System.Environment.CurrentDirectory;//本程序所 ...

  5. YII数据库增删查改操作

    初学YII, 整理了一些YII数据库的相关操作,  共同学习,共同进步. 一.查询数据集合 //1.该方法是根据一个条件查询一个集合 $admin=Admin::model()->findAll ...

  6. SQL Server跨数据库 增删查改

    比如你在库A ,想查询库B的表.可以用 数据库名.架构名.表名的方式查询 select * from 数据库B.dbo.表1 也可以在存储过程中这样使用. 需要注意的是,如果使用这样的查询方式,你必须 ...

  7. flask框架中,利用数据库增删查改

    # 配置数据库app.config['SQLALCHEMY_DATABASE_URI'] = "mysql://root:mysql@127.0.0.1:3306/booktest" ...

  8. laravel 数据库 - 增删查改

    //查询public function select(){ /** 数据表 CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, ...

  9. Django笔记&教程 5-1 基础增删查改

    Django 自学笔记兼学习教程第5章第1节--基础增删查改 点击查看教程总目录 第四章介绍了模型类models.Model和创建模型,相当于介绍了数据库表和如何创建数据库表. 这一章将介绍如何使用模 ...

随机推荐

  1. 贝塞尔曲线(UIBezierPath)属性、方法汇总

    UIBezierPath主要用来绘制矢量图形,它是基于Core Graphics对CGPathRef数据类型和path绘图属性的一个封装,所以是需要图形上下文的(CGContextRef),所以一般U ...

  2. win7 64位下vs不能以管理员身份运行的问题解决

    开发机上安装了VS6.0/2008/2010/2013,之前一直是正常的,突然莫名其妙不能以管理员身份运行(除了VS6),报"application cannot start.", ...

  3. (视频)Erich Gamma 与 Visual Studio Online 的一点野史

    大家对Erich Gamma的熟悉应该都集中在<设计模式>, Eclipse以及最近微软所发布的Visual Studio Code跨平台代码编辑器.其实在Erich加入微软的头几年里,他 ...

  4. UDAD 用户故事驱动的敏捷开发 – 演讲实录

    敏捷发展到今天已经在软件行业得到了广泛认可,但大多数敏捷方法都是为了解决某一特定问题而总结出来的特定方法或实践,一直缺乏一个可以将整个开发过程串接起来的成体系的方法.用户故事驱动的敏捷开发(User ...

  5. [译]理解Javascript的异步等待

    原文链接: https://ponyfoo.com/articles/understanding-javascript-async-await 作者: Nicolás Bevacqua 目前async ...

  6. 论Pair的重要性

    这些天我在用React和D3做图表,从已经实现的图表里复制了一些坐标轴的代码,发现坐标轴上的n个点里,只有第一个点下面能渲染出文字提示,其余点下面都无法渲染出文字. 和组里的FL一起百思不得其解好几天 ...

  7. 转载 NPOI Excel 单元格背景颜色对照表

    NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillP ...

  8. 一个典型的MapRuduce实例------webcount(网站统计访客信息)

    统计某一特定网站的某个时辰访客人数 所用版本:hadoop2.6.5 数据样式如下: 111.111.111.111 - - [16/Dec/2012:05:32:50 -0500] "GE ...

  9. QPalette的用法

    1.QPalette的概念 调色板类QPallete提供了颜色角色(color roles)概念,是指当前GUI界面中颜色的职责,通过枚举变量QPalette::ColorRole来定义, 比较常用的 ...

  10. 【Linux】重定向与管道

    重定向 redirection 每个命令有输入源和输出目的地,默认行为,是标准输入和标准输出.大多数情况,标准输入是键盘,标准输出是屏幕.可以为单独的操作修改输入和输出,这就是重定向.重定向可以使某个 ...