Django 对数据库ORM的操作

Django  mysql 自动生成表命令

#建立映射

python manage.py makemigrations

#入库

python manage.py migrate

django 允许外部ip访问服务

python manage.py runserver 0.0.0.0:8000

Django 建立数据库模型

from django.db import models

class Table_Test(models.Model):

    id = models.IntegerField(primary_key=True)

    name = models.CharField(max_length=200)

    class Meta:

        db_table = "test"

常用sql操作

#入库操作(增)

    #建立实例

    #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='新密码')

    #查询全部数据 翻译为 select * from user; all()返回值是list

    res = User.objects.all()

    #print(res)

    #查询限定条件的数据 翻译为 select * from user where username = '新用户123' and逻辑使用多个参数传递

    res = User.objects.filter(username='新用户',password='你好')

    #print(res)

    #只取一条 翻译 select * from user where id = 1

    res_one = User.objects.get(id=1)

    #print(res_one)

    #排除条件  翻译为 select * from user where username != '新用户123'   <>

    res = User.objects.exclude(username='新用户')

    #定制字段显示 翻译为 select password from user where name = '新用户'

    res_s = User.objects.filter(username='新用户').values('password')

    #排序 翻译为 select * from user order by id asc  倒序使用 reverse()

    res = User.objects.filter(username='新用户').order_by("password").reverse()

    #去重 翻译为 select distinct(username) from user where username = '新用户'

    res_dis = User.objects.filter(username='新用户').values('username').distinct()

    #print(res_dis)

    #取数量 翻译为 select count(*) from user

    res_count = User.objects.filter(username='新用户').count()

    print(res_count)

原文地址:https://www.cnblogs.com/1488boss/p/10864134.html