ORM从增删改查等方面说明

一:创建数据

  

    #创建数据两种方式1,推荐方式1
UserInfo.objects.create(username="root",password="") #方式1变种 user_dict={"username":"root","password":""}
UserInfo.objects.create(**user_dict) #方式2
obj=UserInfo(username="root2",password="")
obj.save()

二:查询数据

    result=UserInfo.objects.all()#返回的是QuerySet类型,其实就是个UserInfo对象列表
for row in result:
print(row.username,row.password)
result1=UserInfo.objects.filter(username="root")

三:删除数据

  

UserInfo.objects.filter(username="root").delete()

四:更新数据

UserInfo.objects.filter(username="root").update(username="roo2")

五:元数据

    class User(models.Model):
name=models.CharField(max_length,index=True)
email=model.CharField(max_length,index=True)
class meta:
db_table="table_name"#数据库中生成的表名称 默认 app名称 + 下划线 + 类名 #联合索引
index_together=[
("name","email"),
#联合索引支持最左前缀模式(上面单独索引可以不用建立,但是要考虑使用场景。因为单独最后一个字段查询是不能命中)
#select * from where name="xx" 可以命中索引
#select * from where name="xx" and emial="XX"可以命中索引
#select * from where emial="XX" 不能命中索引
#所以这是有代价,最后一个不能命中索引
]
#联合唯一索引,和联合索引又加了限制唯一
unique_together=[()] #admin中显示表的名称
verbose_name #verbose_name加s
verbose_name_plural verbose_name_plural="上课记录" django-admin中显示的是:上课记录s

11)django-ORM(操作增删改查)的更多相关文章

  1. Django ORM 数据库增删改查

    Django ORM 数据库增删改查 增 # 创建.增加数据(推荐) models.UserInfo.objects.create(username=') # 创建.增加数据 dic = {'} mo ...

  2. Django数据库操作(增删改查)

    Django数据库操作(增删改查) 创建数据库中的一个表 class Business(models.Model): #自动创建ID列 caption = models.CharField(max_l ...

  3. Python Django ORM基本增删改查

    工程下的urls.py中增加如下: from cmdb import views as cmdb #要把你要操作的项目import进来 urlpatterns = [ url(r'orm', cmdb ...

  4. django数据库操作-增删改查-多对多关系以及一对多(外键)关系

    一.一对多(外键) 例子:一个作者对应多本书,一本书只有一个作者 model代码: class Person(models.Model); name = models.CharField('作者姓名' ...

  5. 转: django数据库操作-增删改查-多对多关系以及一对多(外键)关系

    原文链接:http://blog.csdn.net/u010271717/article/details/22044415 一.一对多(外键) 例子:一个作者对应多本书,一本书只有一个作者 model ...

  6. Web框架之Django_02基本操作(Django项目启动配置、数据库连接、orm、增删改查)

    摘要: Django项目简单现实过程 pycharm连接数据库 Django之orm简单操作增删改查 一.新建Django项目.配置.设置: 新建Django项目:(为了熟悉Django操作,暂时全部 ...

  7. Hbase常用操作(增删改查)

    Hbase常用操作(增删改查) [日期:2014-01-03] 来源:Linux社区  作者:net19880504 [字体:大 中 小]     运行Eclipse,创建一个新的Java工程“HBa ...

  8. Android-Sqlite-OOP方式操作增删改查

    之前写的数据库增删改查,是使用SQL语句来实现的,Google 就为Android开发人员考虑,就算不会SQL语句也能实现增删改查,所以就有了OOP面向对象的增删改查方式 其实这种OOP面向对象的增删 ...

  9. JavaScript---Dom树详解,节点查找方式(直接(id,class,tag),间接(父子,兄弟)),节点操作(增删改查,赋值节点,替换节点,),节点属性操作(增删改查),节点文本的操作(增删改查),事件

    JavaScript---Dom树详解,节点查找方式(直接(id,class,tag),间接(父子,兄弟)),节点操作(增删改查,赋值节点,替换节点,),节点属性操作(增删改查),节点文本的操作(增删 ...

随机推荐

  1. WCF各个Service之间共享数据

    为了实现cache存储验证用户身份信息,减少通过数据库验证的次数,需要在wcf各个服务之间建立共享数据区. namespace WcfService1 {     public static clas ...

  2. tensorflow---文字识别

    读取数据的三种方法: 1. feeding : providing data when running each step : classifier.eval(feed_dict={input:my_ ...

  3. oracle 对对表匹配的进行修改匹配不上的可以进行新增 (MERGE INTO)

    MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句. 通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询, 连接条件匹配上的进行UPDATE,无法匹配 ...

  4. html去掉滑动条

    实例: .week { /*text-align: left;*/ /*display: inline-table;*/ margin: 0 auto; padding: 0; list-style: ...

  5. svn 的truck、tag、 merge

    参考文章 :    https://blog.csdn.net/keda8997110/article/details/21813035

  6. 修改/dev/shm大小 tmps

    /dev/shm  在oracle开启AMM时发现/dev/shm下的空间不够用 WARNING: You are trying to use the MEMORY_TARGET feature. T ...

  7. SpringCloud Hystrix

    ⒈Hystrix是什么? Hystrix使一个用于处理分布式系统的延迟和容错的开源库.在分布式系统里,许多依赖不可避免的因服务超时.服务异常等导致调用失败,Hystrix能够保证在一个依赖出现问题的情 ...

  8. h5中placeholder样式

    <!DOCTYPE html> <html> <head> <title>placeholder样式demo</title> <sty ...

  9. 【转】MySQL用户管理及SQL语句详解

    [转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...

  10. python3-面向对象进阶(内置方法)

    面向对象进阶: isinstance和issubclass 反射 __setattr__,__getattr,__delattr__ __setitem__,__getitem,__delitem__ ...