zoukankan      html  css  js  c++  java
  • django中数据库的配置及相关增删改查

    ORM

    ORM是什么?:(在django中,根据代码中的类自动生成数据库的表也叫--code first)

    ORM:Object Relational Mapping(关系对象映射)

    类名对应------》数据库中的表名

    类属性对应---------》数据库里的字段

    类实例对应---------》数据库表里的一行数据

    obj.id obj.name.....类实例对象的属性

    Django orm的优势:

    Django的orm操作本质上会根据对接的数据库引擎,翻译成对应的sql语句;所有使用Django开发的项目无需关心程序底层使用的是MySQL、Oracle、sqlite....,如果数据库迁移,只需要更换Django的数据库引擎即可;

    创建数据库类

    models.py

    #导包导入django数据库类
    from django.db import models
    
    #建立数据库类
    class User(models.Model):
        #主键 通过参数声明主键
        id = models.IntegerField(primary_key=True)
        #用户名 字符串类型需要声明长度限制
        username = models.CharField(max_length=200)
        #密码
        password = models.CharField(max_length=100)
        #时间字段
        time = models.DateTimeField()
        #图片 
        img = models.CharField(max_length=200)
        #性别
        gender = models.IntegerField()
    
    
        #声明表名
        class Meta:
            #必须和数据库中的表名吻合
            db_table = "user"


    #查询全部数据
        res = User.objects.all()
        #print(res)
    
        #查询限定条件的数据 
        res = User.objects.filter(username='新用户',password='你好')
        #print(res)
    
        #只取一条 
        res_one = User.objects.get(id=1)
        #print(res_one)
    
        #排除条件 
        res = User.objects.exclude(username='新用户')
    
        #定制字段显示
        res_s = User.objects.filter(username='新用户').values('password')
    
        #排序 
        res = User.objects.filter(username='新用户').order_by("password").reverse()
    
        #去重 
        res_dis = User.objects.filter(username='新用户').values('username').distinct()
        #print(res_dis)
    
        #取数量 
        res_count = User.objects.filter(username='新用户').count()
        print(res_count)
    #入库操作(增)
        #建立实例
        #user = User(username='新用户',password='你好')
        #入库操作
        #user.save()
    #删除数据(删)
        #User.objects.filter(username='新用户').delete()
    
    
     #修改数据(改) 第一种方式
        #user = User.objects.get(id=9)
        #修改字段
        #user.username = '1234'
        #保存修改
        #user.save()
    
     #修改数据(改) 第二种方式
        #return HttpResponse('',status=403)
    
        #User.objects.filter(id=9).update(password='新密码')
     
     
  • 相关阅读:
    flutter  安装教程
    使用TcpTrace小工具截获Web Service的SOAP报文
    移除TFS服务器关系
    webservice log4net日志写入失败
    php发送邮件功能(PHPMailer-master插件)
    Unity3d:延迟加载ScrollView的内容
    Unity3d:播放物理目录下的MP3文件
    installshield Basic 工程每次安装完提示重启电脑
    网站背景音乐源码
    Unity3d:加载Format是RGB24位的图片失败(加载图片显示问号)
  • 原文地址:https://www.cnblogs.com/liang715200/p/10465582.html
Copyright © 2011-2022 走看看