zoukankan      html  css  js  c++  java
  • django框架数据库相关操作

    一、数据库表的创建

    1、创建表的代码

    from django.db import models

    class
    Nav (models.Model): name=models.CharField(max_length=10,unique=True,verbose_name="导航名称") #int可以不加长度,字符串类型必须加长度 url=models.CharField(max_length=100,unique=True,verbose_name='导航链接') classname=models.CharField(max_length=50,unique=True,verbose_name='导航图标') is_delete=models.SmallIntegerField(default=1,verbose_name='是否被删除') create_time=models.DateTimeField(verbose_name='创建时间',auto_now_add=True) #auto_now_add插入数据自动取当前时间 update_time=models.DateTimeField(verbose_name='修改时间',auto_now=True)#auto_now 修改时间自动取当前时间 def __str__(self): return self.name class Meta: verbose_name='导航表' verbose_name_plural=verbose_name db_table='nav' #指定表名 ordering=['update_time'] #查询数据的时候,用来排序的

    2、运行命令,生成表

    python manage.py makemigrations   表结构
     
    python manage.py migrate 创建数据库表

    二、表数据增加

    #新增,批量插入,可通过循环控制
    models.test.objects.create(name='首页8',url='index8') #新增第一种方法
    models.test(name='首页9',url='index9').save() #第二种新增数据方法
    
    for i in range(10,100):
        models.test(name='首页%s'%i, url='index%s'%i).save()
    
    

    三、表数据删除

    #删除
    models.test.objects.all().delete() #删除全部
    models.test.objects.filter(id=3).delete() #指定删除

    四、表数据修改

    #修改
    n=models.test.objects.get(id=100) #第一种修改方式
    n.name="wode"
    n.save()
    #
    models.test.objects.all().update(is_delete=0) #第二种修改方式

    五、表数据查询

    # 查询
    # get方法查询的话,必须的保证这个数据查出来的只有1条,才可以
    result = models.test.objects.get(name="wode")
    result2 = models.test.objects.get(id=109)
    print(result)
    print(result2)
    
    # filter 可以查询多条数据
    result = models.test.objects.filter(is_delete=0)
    print(result)
    
    # 模糊查询
    result = models.test.objects.filter(name__contains='w', id__gte=1)  # gt大于,lt 小于,gte大于等于,lte小于等于,range范围之间,in在什么内
    result = models.test.objects.exclude(id=100)  # exclude排除,不等于
    all = models.test.objects.all()
    print(result)
    print(all)
  • 相关阅读:
    【小工具】根据定义的白名单字段进行Bean的拷贝
    【Java】Java8的Lambda入门记录
    【Java】浅谈Java IO
    【工具】我的Git学习日志
    【Java】浅谈HashMap
    【Java】Java Queue的简介
    【ZooKeeper】ZooKeeper入门流水记
    【MQTT】Mosquitto的安装与使用流水记
    【数据结构】简单的数据结构图解
    【Java多线程】JDK1.5并发包API杂谈
  • 原文地址:https://www.cnblogs.com/xiaokuangnvhai/p/11676068.html
Copyright © 2011-2022 走看看