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)
原文地址:https://www.cnblogs.com/xiaokuangnvhai/p/11676068.html